解决爬虫中文乱码问题
生活随笔
收集整理的這篇文章主要介紹了
解决爬虫中文乱码问题
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
解決爬蟲中文亂碼問題
今天群里有個人反映某個網(wǎng)址爬出來的網(wǎng)頁源代碼出現(xiàn)中文亂碼,我研究了半天,終于找到了解決方法。
一開始,我是這樣做的:
import requestsurl = 'http://search.51job.com/jobsearch/search_result.php?fromJs=1&jobarea=090200%2C00&funtype=0000&industrytype=00&keyword=python&keywordtype=2&lang=c&stype=2&postchannel=0000&fromType=1&confirmdate=9' print requests.get(url).content這樣做,如果用命令行去運行,得到的內容中文顯示正常,但如果用pycharm運行得到的確實亂碼。
這個問題我一時半會還不知道是為什么,如果有人知道,請告訴我,謝謝!
?
后來,我在網(wǎng)上查閱資料,發(fā)現(xiàn)可以通過下面這種方式解決中文亂碼問題:
首先,我們在瀏覽器中打開網(wǎng)址,通過查看源代碼可以發(fā)現(xiàn)這個網(wǎng)址采用的編碼是GBK:
然后我們通過下面這段代碼發(fā)現(xiàn)通過requests獲取的編碼不是GBK,而是ISO-8859-1。
import requestsurl = 'http://search.51job.com/jobsearch/search_result.php?fromJs=1&jobarea=090200%2C00&funtype=0000&industrytype=00&keyword=python&keywordtype=2&lang=c&stype=2&postchannel=0000&fromType=1&confirmdate=9' print requests.get(url).encoding所以打印出來的就是亂碼,我們需要將編碼改為GBK才可以:
import requestsurl = 'http://search.51job.com/jobsearch/search_result.php?fromJs=1&jobarea=090200%2C00&funtype=0000&industrytype=00&keyword=python&keywordtype=2&lang=c&stype=2&postchannel=0000&fromType=1&confirmdate=9' r = requests.get(url) r.encoding = 'GBK' print r.text這樣做,無論你是用pycharm還是命令行去運行,得到的都是正常的中文了。
posted on 2016-12-20 01:23 Kilichko 閱讀(...) 評論(...) 編輯 收藏轉載于:https://www.cnblogs.com/Yemilice/p/6201224.html
總結
以上是生活随笔為你收集整理的解决爬虫中文乱码问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 男人梦到蛇下蛋预示着什么
- 下一篇: 异常处理_Maven之web项目java