爬虫的思想就是模仿我们上网的过程去获取信息,根据这个思想去设计程序。当我们进行网页访问时,我们首先就要对我们的目标网页服务器进行请求,然后服务器才给响应,我们才能获得网页信息。所以爬虫的第一步就是要对服务器进行请求。
在Python中实现请求常用的有两种方式,一种是用urllib/urllib2,另一种是Requests。urllib/urllib2是Python中内置的两个库,可以直接调用,貌似在Python3中已经没有这个库了,所以没有的话要用到还是要先安装这两个库。在urllib2中有相应的函数去请求和获得响应,比如下面的例子访问百度首页。
也可以一步到位
当然以上的代码适用于不需要账号和密码登录的网页,如果我们要访问的网页需要登录那就需要进行另外一番处理,需要准备用户名和密码,有的网页登录还需要验证码等等信息,这样就增大了爬虫的难度,暂时先放下这块。
接下来用requests进行HTML请求,因为requests这个库是外部大神写的,所以要先安装这个库,安装方法可以选择pip安装也可以选择源码安装,但是在anaconda2里面这些库都预先装好的。本来觉得上面的代码太简单了,但是用requests代码会更简洁。比如
r.content返回的是字节形式,r.text返回的是文本形式,但是r.text返回的文本出现了乱码,可以通过chardet进行检测和重定义编码格式。如图
领取专属 10元无门槛券
私享最新 技术干货