在Python3.x中,我们可以使用urlib这个组件抓取网页,urllib是一个URL处理包,这
个包中集合了一些处理URL的模块,如下:
1.urllib.request模块用来打开和读取URLs;
2.urllib.error模块包含一些由urllib.request产生的错误,可以使用try进行捕捉处理;
3.urllib.parse模块包含了一些解析URLs的方法;
4.urllib.robotparser模块用来解析robots.txt文本文件.它提供了一个单独的
RobotFileParser类,通过该类提供的can_fetch()方法测试爬虫是否可以下载一个页面。
5.urllib.request.urlopen()函数用于实现对目标url的访问。
函数原型如下:urllib.request.urlopen(url, data=None, [timeout, ]*, cafile=None, capat
h=None, cadefault=False, context=None)
• url 参数:目标资源在网路中的位置。可以是一个表示URL的字符串(如:htt
p://www.xxxx.com/);也可以是一个urllib.request对象
• data参数:data用来指明发往服务器请求中的额外的信息(如:在线翻译,
在线答题等提交的内容)。HTTP是python中实现的众多网络通信http、https、
ftp等协议中,唯一一个使用data 参数的,也就是说只有打开的是http网址的
时候,自定义data参数才会有作用。
• cafile、capath、cadefault 参数:用于实现可信任的CA证书的HTTP请求。(基
本上很少用)
• context参数:实现SSL加密传输。(基本上很少用)