当前第2页 返回上一页
要判断网页是否启用了压缩并对其解压,可参考以下代码:
1 2 3 4 5 6 7 8 9 10 11 12 | import urllib
import gzip
from StringIO import StringIO
req = urllib.urlopen( "http://some.web.site" )
info = req.info()
encoding = info.getheader( 'Content-Encoding' )
content = req.read()
if encoding == 'gzip' :
buf = StringIO(content)
gf = gzip.GzipFile(fileobj=buf)
content = gf.read()
print content
|
在我们教室的编程实例 查天气系列(点击查看) 中,这两个问题困扰了相当多人。在此特别讲解一下。
最后,还有个“利器”要介绍一下。如果一开始就用它,你甚至不知道还有上述两个问题的存在。
这就是 requests 模块。
同样抓取网页,只需要:
1 2 | import requests
print requests.get( "http://some.web.site" ).text
|
没有编码问题,没有压缩问题。
This is why I love Python.
至于如何安装 requests 模块,请参考之前的文章:
如何安装 Python 的第三方模块 - Crossin的编程教室 - 知乎专栏
以上就是Python抓取网页乱码的原因及解决方法的详细内容,更多文章请关注木庄网络博客!!
返回前面的内容
相关阅读 >>
Python绘图四叶草
Python如何批量处理excel数据?
Python之反转序列详解
为什么Python安装失败
Python之property()装饰器的使用详解
Python字符串连接的几种方式总结
Python序列基础--元组
Python实现switch/case语句的方法
Python 合并多个字典或映射教程
Python轻松实现图片旋转
更多相关阅读请进入《Python》频道 >>
人民邮电出版社
python入门书籍,非常畅销,超高好评,python官方公认好书。
转载请注明出处:木庄网络博客 » Python抓取网页乱码的原因及解决方法