爬虫学习笔记(三)requests模块使用

2018-01-06 分类:爬虫 阅读(958) 评论(0)

前面在说爬虫原理的时候说了,就写代码自动化的获取数据,保存下来数据,那怎么写代码来请求一个网址,获取结果呢,就得用requests模块了。

这篇博客说一下requests模块的使用,requests模块是python的一个第三方模块,它是基于python自带的urllib模块封装的,用来发送http请求和获取返回的结果,操作很简单。

requests模块是第三方模块,不是python自带的,需要安装才可以使用。

requests模块用法

 

http权限认证

有一些网站,比如说下载东西的时候有http的权限验证,没有验证话就返回401 请求未经授权这种错误的。一般都是需要http权限验证,下面是怎么添加http权限验证。

当然这个http权限认证是http本身的,和你那些登陆请求那些不一样,比如说你要调一个登陆接口,传入的账号密码,和那个不是一回事,要区别开。

举个例子呢就是商场的大门上的锁就是这个http权限验证,这个锁是人家商场的,而你的店铺的锁才是你登陆接口,你输入的账号密码。一般你一打开一个网站直接弹出来一个窗口让你输入账号密码,你都看不到页面,这种就是http权限验证。而那种你打开网站之后,直接就能看到页面,你要登录的时候,输入账号密码然后点登录的,这种的就是正常的登陆请求。这种http权限验证的比较少见。

http会话保持

什么是会话保持,就是有一些操作需要登录之后才操作的,你得先登录,然后才能做其他的操作。那咱们做的时候怎么做,先发送登陆的请求,获取到登录的cookie信息,(因为登录之后它的身份验证信息都是放在cookie里面的),然后把cookie传给下一个你要请求的url,这样就ok了,看下面代码。

正常的话咱们要这么做,requests模块给咱们提供了更简单的方式,就是使用requests.session这个方法,它会自动帮咱们管理cookie,不需要咱们自己再获取到登陆的cookie,传给创建文件的请求,代码如下:

http代理设置

我们在写爬虫的时候,如果都用同一个ip访问多次访问某个网站,经常ip会被封,这样我们就访问不了了,那怎么解决呢,就得用ip代理了,代理的意思就是咱们把请求先发到代理上,然后再由代理帮咱们把请求发送出去,这样最终访问网站的ip就不是咱们自己的ip了。网上代理有很多,大多数收费的代理网站上每天都会有几个免费的代理,我先从https://www.kuaidaili.com/free/inha/ 这个里面找了几个免费的代理,设置代理的代码如下

 

 

您可能也喜欢:

使用python拼接所有好友的头像

这篇博客介绍一下怎么用python把多张图片按比例缩小,拼成一张图片,比如说我要把我所有微信好友的头像,到一个图片里,如下图:        咱们先不着急写代码,先分析下需求,把思路缕清,代码就好写了。 这个拼图片,就像咱们要做一个照片墙一样,做照片墙怎么做呢,假如说现在有一块640*640的一块...

more

使用python生成词云

什么是词云呢? 词云就是一些关键词组成的一个图片。大家在网上经常看到,下面看一些例子:   那用python生成一个词云的话怎么办呢,首先要有一些词,咱们随便找个吧,用see you again的歌词好了,放到again.txt里面,放着待会咱们用。 然后呢,咱们用 wrodcloud...

more

centos使用squid搭建代理服务器

我们在爬取某个网站的时候,如果有的网站做了反爬虫,如果频繁访问的话,就把我们的ip封掉了,不能访问了,那怎么办呢,就得使用代理了,代理的意思就是,先把请求发到代理上,然后代理帮你把请求发出去,这样你要爬取的网站收到的就是代理发出去的请求了。 网上有很多提供代理的网站,可以搜一下,每天都有免费的代理可...

more

评论&留言
欢迎新朋友你的到来!
还没有人抢沙发呢~
昵称

登录

忘记密码 ?

切换登录

注册