【导读】python爬取网页信息
【主题】python爬取网页信息之request用法
【代码】
【分析】
1.urlopen()方法
urllib.request.urlopen()函数用于实现对目标url的访问。
函数原型如下:urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capath=None, cadefault=False, context=None)
url: 需要打开的网址
data:Post请求提交的数据
timeout:设置网站的访问超时时间
函数参数介绍
url 参数:目标资源在网路中的位置。可以是一个表示URL的字符串(如:http://www.pythontab.com/);也可以是一个urllib.request对象
data参数:data用来指明发往服务器请求中的额外的参数信息(如:在线翻译,在线答题等提交的内容),data默认是None,此时以GET方式发送请求;当用户给出data参数的时候,改为POST方式发送请求。
timeout:设置网站的访问超时时间
cafile、capath、cadefault 参数:用于实现可信任的CA证书的HTTP请求。
context参数:实现SSL加密传输。
【返回方法】
urlopen返回对象提供方法:
1.read() , readline() ,readlines() , fileno() , close() :对HTTPResponse类型数据进行操作
2.info():返回HTTPMessage对象,表示远程服务器返回的头信息
3.getcode():返回Http状态码。如果是http请求,200请求成功完成;404网址未找到
4.geturl():返回请求的url
【注意】
1.直接用urllib.request模块的urlopen()获取页面,page的数据格式为bytes类型,显示为二进制,需要decode()解码,转换成str类型。
2.from urllib.request import urlopen
urlopen(‘xxx’)
或者
from urllib import request
request.urlopen(‘xxx’)