Python爬虫-requests库抓取页面内容中文乱码
在抓取页面内容过程中,获取的页面内容中文乱码;
response = requests.get(url, headers=headers)
if response.status_code == 200:
return response.text
else:
return -1
乱码内容如下:
<div class="cpright">
<p style="margin: 10px 0 0; padding: 0px;"><a style="cursor: pointer;" id="foot_sethome" target="_self">将天天基金网设为上网首页å—?</a> <a id="foot_setfavor" style="cursor: pointer;" target="_self">å°†å¤©å¤©åŸºé‡‘ç½‘æ·»åŠ åˆ°æ”¶è—夹å—?</a></p>
<p><a target="_blank" href="http://help.1234567.com.cn/aboutus/about.html">å
³äºŽæˆ‘们</a><span>|</span><a target="_blank" href="http://help.1234567.com.cn/aboutus/licenses.html">资质è¯æ˜Ž</a><span>|</span><a target="_blank" href="http://fundact.eastmoney.com/ttjjyjzx/">ç ”ç©¶ä¸å¿ƒ</a><span>|</span><a target="_blank" href="http://help.1234567.com.cn/aboutus/connect.html">è”系我们</a><span>|</span><a target="_blank" href="http://help.1234567.com.cn/aboutus/security_guid.html">安å
¨æŒ‡å¼•</a><span>|</span><a target="_blank" href="http://help.1234567.com.cn/aboutus/relief.html">å
è´£æ¡æ¬¾</a><span>|</span><a target="_blank" href="http://help.1234567.com.cn/aboutus/secret.html">éšç§æ¡æ¬¾</a><span>|</span><a target="_blank" href="http://help.1234567.com.cn/aboutus/risktips.html">风险æ示函</a><span>|</span><a target="_blank" href="http://feedback.1234567.com.cn/">æ„è§å»ºè®®</a><span>|</span><a id="ttfund_onlineKF" target="_self" href="javascript:;">在线客æœ</a></p>
<p class="cp"> 天天基金客æœçƒçº¿ï¼š95021 / 4001818188<span>|</span>客æœé‚®ç®±ï¼š<a target="_blank" href="mailto:vip@1234567.com.cn">vip@1234567.com.cn</a><span>|</span>人工æœåŠ¡æ—¶é—´ï¼šå·¥ä½œæ—¥ 7:30-21:30 åŒä¼‘æ—¥ 9:00-21:30<br> 郑é‡å£°æ˜Žï¼š<a target="_blank" href="http://help.1234567.com.cn/aboutus/licenses.html" class="footFundCertLink">天天基金系è¯ç›‘会批准的基金销售机构[000000303]</a>ã€‚å¤©å¤©åŸºé‡‘ç½‘æ‰€è½½æ–‡ç« ã€æ•°æ®ä»
ä¾›å‚考,使用å‰è¯·æ ¸å®žï¼Œé£Žé™©è‡ªè´Ÿã€‚<br> ä¸å›½è¯ç›‘会上海监管局网å€ï¼š<a href="http://www.csrc.gov.cn/pub/shanghai/">www.csrc.gov.cn/pub/shanghai</a><br>
</p>
<p class="cp"><span class="footer-icp">沪ICPè¯:沪B2-20130026</span> <a href="https://beian.miit.gov.cn/">网站备案å·:沪ICP备05006054å·</a> <span class="footer-ghs"><a href="http://www.beian.gov.cn/portal/registerSystemInfo?recordcode=31010402000118" target="_blank">沪å
¬ç½‘安备 31010402000118</a></span> 版æƒæ‰€æœ‰:天天基金网 è¿æ³•å’Œä¸è‰¯ä¿¡æ¯ä¸¾æŠ¥:021-54509966/021-24099099</p>
<p>
<a class="footera footer-police" title="上海网è¦ç½‘络110" href="http://www.cyberpolice.cn/"></a>
<a class="footera footer-zx110" title="网络社会å¾ä¿¡ç½‘" href="http://www.zx110.org/"></a>
<a class="footera footer-shjubao" title="上海è¿æ³•å’Œè¿è§„ä¿¡æ¯ä¸¾æŠ¥ä¸å¿ƒ" href="http://www.shjbzx.cn/"></a>
<a class="footera footer-hgwb" title="沪å
¬ç½‘备" href="http://www.zx110.org/picp/?sn=310104031200"></a>
<a class="footera footer-jbzx" title="ä¸å›½äº’è”网è¿æ³•å’Œä¸è‰¯ä¿¡æ¯ä¸¾æŠ¥ä¸å¿ƒ" href="http://www.12377.cn/"></a>
</p>
</div>
</div>
</div>
</div>
由此可以猜想到,是在获取页面的过程中出现了编码问题,使用:
response.text.encode("latin1").decode("utf-8")
将获取的内容先进行“latin1”编码,再进行解码(我所抓取网页的编码格式为UTF-8)。最终成功解决,中文显示正常。