Python网络爬虫之urllib库的应用

2019-08-27

极光小编

Urllib库是什么?

Urllib库是Python爬虫内置的http请求库,这就意味着是不用单独安装就能用的。支持以下4个模块

Request:最基础的http请求模块,能用于伪装请求发送

error:异常处理模块,一旦出现请求错误,能及时获取异常情况,进行相关操作以保证程序不会意外终止。

parse:一种工具模块,提供很多url处理方法,如拆分、解析、合并等。

robotparser:主要用于识别网站的robots.txt文件,进而判断网站是不是能进行爬虫采集,用的比较少。

发送请求

用Urllib的Request模块,能很轻易的完成请求发送并获得响应。看下实际用法:

urlopen( )urllib.request模块提供了最基础的构造http请求的方式,通过它能伪装成浏览器的一个请求发起过程,同时还自带处理授权验证、重定向、浏览器Cookies和其他内容。接下来上案例,爬取Python官网:

urllib的request模块

抓取网页代码的运行结果:

抓取网页代码的运行结果

简单2行代码就实现了Python官网的信息采集,输出了网站的源代码。

通过type()方法输出响应的类型,看返回的是什么

type()响应类型

响应类型如图

响应类型

不难看出,它是一个httpresponse类型的对象,主要包含read( )、readinto( )、getheader(name)、getheaders( )、fileno( )等方法,以及msg、version、status、reason、debuglevel、closed等属性。

得到这个对象之后,我们把它赋值为response变量,然后就能调用这些方法和属性,得到返回结果的一系列信息了。

例如,调用read( )方法能得到返回的网页内容,调用status属性能得到返回结果的状态码,如200代表请求成功,404代表网页没找到。


关注极光公众号

免费领取更多福利