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. javascript - 關于css絕對定位在ios瀏覽器被橡皮筋遮擋的問題2. javascript - 請教如何獲取百度貼吧新增的兩個加密參數3. mysql - 分庫分表、分區、讀寫分離 這些都是用在什么場景下 ,會帶來哪些效率或者其他方面的好處4. Python爬蟲如何爬取span和span中間的內容并分別存入字典里?5. javascript - 請問 chrome 為什么會重復加載圖片資源?6. c++ - 請問MySQL_Connection::isReadOnly 怎么解決?7. css3 - 微信前端頁面遇到的transition過渡動畫的bug8. (python)關于如何做到按win+R再輸入文件文件名就可以運行?9. python - 能通過CAN控制一部普通的家用轎車嗎?10. html5 - 只用CSS如何實現input框的寬度隨框里輸入的內容長短自動適應?
