linux - python 抓取公眾號文章遇到驗證問題
問題描述
linux 下抓取微信公眾號文章遇到驗證問題!!!!!!!!
這是我要抓取的人民日報鏈接:http://mp.weixin.qq.com/profile?src=3×tamp=1492739045&ver=1&signature=bSSQMK1LY77M4O22qTi37cbhjhwNV7C9V4aor9HLhAvbGc2ybWX*qg3WqxntZ7iq0kvYe87oPpcSJKFdmGMx5g==1:首先瀏覽器上訪問是正常的。2:linux下訪問提示需要驗證,以下是簡單的代碼
url = http://mp.weixin.qq.com/profile?src=3×tamp=1492738883&ver=1&signature=bSSQMK1LY77M4O22qTi37cbhjhwNV7C9V4aor9HLhAvbGc2ybWX*qg3WqxntZ7iq2xTLUTfxAMzK79UGvalY1A==response = urllib2.urlopen(url)print response.read()
訪問的結果如下:
補充說明下公眾號鏈接的獲取方式:1:先訪問鏈接:http://weixin.sogou.com/weixi...2:再獲取人民日報公眾號的鏈接進行跳轉。
問題解答
回答1:都不模擬header請求頭的,就能抓取嗎,建議先模擬request header再試一下
回答2:# coding: utf-8import requestsheaders = {}headers[’User-Agent’] = ’Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Firefox/52.0’url = ’http://mp.weixin.qq.com/profile?src=3×tamp=1492739045&ver=1&signature=bSSQMK1LY77M4O22qTi37cbhjhwNV7C9V4aor9HLhAvbGc2ybWX*qg3WqxntZ7iq0kvYe87oPpcSJKFdmGMx5g==’r = requests.get(url, headers=headers)print r.text回答3:
現在在請求中加了header后,返回的錯誤是這樣的。請各位大神麻煩再支下招
回答4:用request可以,本地環境Mac OSX , python3.6.1import requestsheaders = {’user-agent’ : ’Mozilla/5.0’}respon = requests.get(’http://mp.weixin.qq.com/profile?src=3×tamp=1492831080&ver=1&signature=bSSQMK1LY77M4O22qTi37cbhjhwNV7C9V4aor9HLhAvbGc2ybWX*qg3WqxntZ7iqB7vsPUlOS3zhl-8n5FUODg==’, headers = headers)respon.encoding = ’utf-8’print(respon.text)內容在紅色框那一行
相關文章:
1. java - 阿里的開發手冊中為什么禁用map來作為查詢的接受類?2. 數組按鍵值封裝!3. docker不顯示端口映射呢?4. Docker for Mac 創建的dnsmasq容器連不上/不工作的問題5. python3.x - git bash如何運行.bat文件?6. python - flask _sqlalchemy 能否用中文作為索引條件7. clone - git sourceTree克隆倉庫時,都不停彈出Password Required彈窗,即時輸入正確的git賬號密碼還是彈出8. javascript - webpack中alias配置中的“@”是什么意思?9. javascript - ES6規范下 repeat 函數報錯 Invalid count value10. 主題切換問題,用過別人的webapp在后臺切換模板主題后手機端打開網頁就是切換到的主題了
