python爬虫Requests库:学习心得
发布时间
阅读量:
阅读量
一 Requests的介绍
进行网页数据抓取的最佳Python库是什么?它的官方文档说明指出:Requests是一款优雅且易于使用的HTTP库,并专为方便人类使用而设计。
二 安装方法
直接使用:pip install requests
三 Requests基本使用
1. Requests库的7个主要方法
| 方法 | 说明 |
|---|---|
| requests.request() | 构造一个请求,支撑以下各方法的基础方法 |
| requests.get() | 获取HTML网页的主要方法,对应于HTTP的GET |
| requests.head() | 获取HTML网页头信息的方法,对应于HTTP的HEAD |
| requests.post() | 向HTML网页提交POST请求的方法,对应于HTTP的POST |
| requests.put() | 向HTML网页提交PUT请求的方法,对应于HTTP的PUT |
| requests.patch() | 向HTML网页提交局部修改请求,对应于HTTP的PATCH |
| requests.delete() | 向HTML页面提交删除请求,对应于HTTP的DELETE |
2. 使用demo

3. Response对象的基本属性
| 属性 | 说明 |
|---|---|
| r.status_code | HTTP请求的返回状态,200表示连接成功,404表示失败 |
| r.text | HTTP响应内容的字符串形式,即,url对应的页面内容 |
| r.encoding | 从HTTP header中猜测的响应内容编码方式 |
| r.apparent_encoding | 从内容中分析出的响应内容编码方法 |
| r.content | HTTP响应内容的二进制形式 |
4. Requests库的异常
| 异常 | 说明 |
|---|---|
| requests.ConnectionError | 网络连接错误异常,如DNS查询失败,拒绝连接等 |
| requests.HTTPError | HTTP错误异常 |
| requests.URLRequired | URL缺失异常 |
| requests.TooManyRedirects | 超过最大重定向次数,产生重定向异常 |
| requests.ConnectTimeout | 连接远程服务器超时异常 |
| requests.Timeout | 请求URL超时,产生超时异常 |
5. 爬取通用代码框架

四 Requests查漏补缺
1. 更加复杂的POST请求

tips1
tips1
【tips2】HTTP头部大小写不敏感。
2. 重定向问题
在默认设置下,默认情况下除HTTP GET(HEAD)请求外(Requests会自动处理所有重定向),会默认进行重定向处理(即发送响应头包含Location头字段)。若采用其他类型的网络请求(如POST、PUT等),则需通过设置allow_redirects=False来关闭这种行为(即不再发送Location头字段)

3. 超时问题
tips
tips
tips
tips
五 Requests的高级用法
Python Requests库的高级功能应用
Python Requests库的高级功能应用
全部评论 (0)
还没有任何评论哟~
