Python中requests模块的核心使用(1

简介:

模块的底层实现其实还是,但是并不常用

库简单易用

快速上手

常用属性

运行结果

运行结果

解释:

:顾名思义,即请求的地址

:即响应的状态码

:响应头

:响应对应的请求头,即我们在请求时带的请求头,简单来说就是浏览器识别的我们访问其网站带有的请求头,这里以请求百度为例,很明显,这里的,其实就是告诉访问的url,我是python的requests访问的。

:获取网页源码

案例:获取百度首页的百度图片

第一步:

百度首页

首先在百度首页的百度logo图片上点击鼠标右键,点击检查,或者按键盘上的F12,

image.png

找到这个logo的图片的src,即链接地址:

完整代码如上,得到结果在当前的目录,即在当前目录即可以看到这张图片了

发送带headers的请求

还记得刚才描述的headers的内容吗?

:响应对应的请求头,即我们在请求时带的请求头,简单来说就是浏览器识别的我们访问其网站带有的请求头,这里以请求百度为例,很明显,这里的,其实就是告诉访问的url,我是python的requests访问的。

在这种情况下,浏览器是知道我们是爬虫在浏览,那么长期这么操作会导致该网站对IP进行封锁,尤其是短时间内访问量非常大的情况下,那么这个时候我们就需要对写的爬虫进行headers伪装

怎么找到headers呢?

image.png

在浏览器控制台中,找到Network,如果Network里什么都没有,点击浏览器的刷新,或者按F5刷新,即可出现内容,在内容中点击左边的第一个或者其他的都行,只要会出现这样的headers就可以,我们可以在这里面找到,将后面的内容复制出来,放到我们构造的headers里面。

把它构造成字典的形式,即:

完整代码如下:

感兴趣的小伙伴可以对比一下,带有headers的请求和没有带有headers的请求的区别,这个代码可以看到请求来的内容的总字节数,可以对比字节数是否一致,带headers的请求到的数据是否比不带headers的请求,请求到的数据要多?

这就是简单的requests的请求

WX公众号:TechBoard

不断更新,欢迎大家的加入

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181211G1M0SD00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码关注腾讯云开发者

领取腾讯云代金券