一、查看网页是否压缩gzip
req = urllib.request.Request(url)
html = urllib.request.urlopen(req)
print(html.info().get('Content-Encoding')) #print(html.info())能查看更多信息
二、查看网页编码方式
在学习Python爬取网页的时候,我们经常会遇到编码方式的困扰,为了解决这个编码方式的问题,首先是要获取网页的编码方式,下面就获取网页的编码方式重点说一下三种方法。
一, 使用chardet模块(python3自己实现,亲测成功)
import chardet
import urllib.request
data = urllib.request.urlopen('http://www.baidu.com').read()
chardit = chardet.detect(data)
print (chardit['encoding'])
在工作中进行以下实现:
import urllib.request
import chardet #用于获取网页编码方式
urls = open("f:/1.txt") #从1.txt取urls数据
for url in urls:
request = urllib.request.Request(url)
response = urllib.request.urlopen(request)
data = response.read()
chardit = chardet.detect(data) #chardit为获取网页编码相关信息的字典
rule = chardit["encoding"]
if rule:
print(rule)
else:
print("error!没有获得网页编码格式信息")
二, 使用urllib模块的getparam方法
import urllib
fopen1 = urllib.urlopen('http://www.baidu.com').info()
print fopen1.getparam('charset')# baidu
三, 利用BeautifulSoup模块方法
- 1
- 2
- 3
- 4
- 5
- 1
- 2
- 3
- 4
- 5
这里爬取网页内容出现的乱码问题,可以参考博客文章。
这里获取网页html内容,可以参考博客文章。
转载自:http://blog.youkuaiyun.com/winterto1990/article/details/47658887