Python爬取網頁requests亂碼
問題描述
**之前有在裁判文書上爬取數據,這段時間重新運行爬蟲后發現無法獲取網頁數據,找了一下發現requests網頁源碼返回的是亂碼**
(如下截取一部分返回的數據:<meta http-equiv='Content-Type' content='text/html; charset=utf-8'><meta )不知道是不是網站對網頁內容進行了加密,請問如何解決這個問題?謝謝!
截取部分程序源碼:
headers = {’User-Agent’: ’Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/59.0.3071.104 Safari/537.36’,’Accept’: ’text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8’,’Accept-Language’: ’zh-TW,zh;q=0.8,en-US;q=0.6,en;q=0.4’,’Accept-Encoding’: ’gzip, deflate’,’Connection’: ’keep-alive’,’Content-Type’: ’text/html; charset=utf-8’}html = requests.post(’http://wenshu.court.gov.cn/List/ListContent’, data=data, headers=headers)print(html.text)
但是在審查元素里返回應該返回的數據,請問這哪里出現了問題?
之前程序正常運行時返回的數據是這樣的:
問題解答
回答1:ajax 加載的結果頁面,如果在 network 里獲取不到類似 json 的反饋結果。就使用PHANTOMJS來模擬加載。然后匹配爬取。
回答2:你的 html 對象使用的編碼不對,加入一行 html.encoding = html.apparent_encoding根據實際獲取的 text 推測編碼,重新解碼。
回答3:如果你愿意去鉆,給你個參考地址:http://www.qingpingshan.com/j...
回答4:print html.content
相關文章:
1. 如何解決docker宿主機無法訪問容器中的服務?2. docker 下面創建的IMAGE 他們的 ID 一樣?這個是怎么回事????3. require后不用使用echo返回到微信服務器 嗎4. nginx - 如何將wordpress系統放在二級域名下5. javascript - 請問要如何修改 Node 的透明度嗎?6. javascript - 求助,nodeJS和koa2文檔對新手小白太不友好,一臉懵逼。。。7. css3 background顯示圖片的一部分8. vim中編輯HTML文件時換行不能縮進9. 在應用配置文件 app.php 中找不到’route_check_cache’配置項10. html按鍵開關如何提交我想需要的值到數據庫
