爬虫入门第一课 requests基本使用
在python基础第五课中已经教会大家如何在pycharm中导入requests库了,我们接下来来使用它
requests库是python用来提供http服务的,不严谨的说就是网页访问服务
这是requests的两个常用方法,什么叫做get?什么叫做post呢?
简单来说GET就是普通的获取网页:我们平时访问一个网页就是get取得
POST一半常用于提交:比如我们登录一个网站的时候,我们要提交一些保密的数据的时候
所以我们获取一个页面的时候是使用requests.get()方法
我们来看下这个方法的参数:
url指的就是你要访问的页面,headers代表请求头部信息,cookies代表服务器存在本地浏览器的数据
不要急,我会着重讲解headers和cookies
使用chrome抓包工具,了解网络
请大家打开chrome浏览器,我们来访问
https://www.douban.com/
然后点击鼠标右键检查
点击左上角的network
这是chrome浏览器给我们提供的一个抓包工具,就是抓住我们的请求网站和获得的响应的工具
我们刷新一次这个页面
找到这个,大家不要急ing,这就是我们浏览器访问网页的真实请求数据了
这是不是就是 request headers ?
我们来看看里面有什么
Accept:text/html 的意思是我发出这个请求想获得一个网页
Accept-Encoding:代表网页传输的时候用什么压缩格式(这个没必要管哦)
Host:代表你要访问的网页属于哪个域名
其他的以后再说
接下来就是重头戏啦ing
User-Agent:的意思是你浏览器的版本信息,就是你发出一个请求一定会带上你浏览器的版本哦,(这里是很重要的一点,我们的requests也要加上这个)
Cookie: 就是我们刚刚说的另外一个参数啦 cookies requests将这个单独拿出来做了一个参数哦,cookies我们日后会详细讲的
尝试访问豆瓣
request.get()执行成功后会返回一个response对象
什么是对象呢,你可以理解就像一个人,会有不同的属性,和方法
我们可以用对象.属性名 对象.方法名去获取
比如这里我们就输出了response对象的text内容
访问成功是返回这种哦,我们发现我们并没有用到headers这个参数,
滑稽怪你是不是瞎说,莫慌
我们来试试别的网站吧
尝试访问知乎
500服务器错误,一般我们遇到这种错误就代表,我们被网站放发现了哦,并且拒绝了我们的请求,这肯定是我们的请求头部信息被发现了
网站方发现我们不是浏览器
而是代码
所以我们需要伪装我们的headers哦
这样我们就能成功访问了呢,
记住headrs和cookies都是字典形式哦
这个User-Agent可以通过抓包工具获取哦,就是上面说的chrome
也可以去网上百度一个哦
领取专属 10元无门槛券
私享最新 技术干货