一、基本使用
1、导入模块
import requests
2、指定URL
url = "https://httpbin.org/id"
3、发送请求
- 使用
requests.get(url)
发送GET请求。 - 使用
requests.post(url, data=data, headers=headers)
发送POST请求,其中data
是请求体中的数据,headers
是请求头信息。
4、 获取响应:
- 响应对象包含了服务器返回的所有信息,如状态码、响应内容等。
- 示例代码:
response = requests.get(url)
5、解析响应:
- 通过
response.text
获取响应内容的字符串形式。 - 通过
response.content
获取响应内容的二进制形式。 - 通过
response.status_code
获取HTTP状态码,如200表示成功。 - 通过
response.headers
获取响应头信息。
6、持久化存储(可选):将爬取的数据保存到文件或数据库中。
二、HTTP请求类型
- GET:用于请求访问已被URI(统一资源标识符)识别的资源。
- POST:用于提交表单数据或上传文件。
- HEAD:类似于GET请求,但服务器在响应中只返回首部,不返回实体的主体部分。
- PUT:用于上传文件,更新资源等。
- DELETE:请求服务器删除指定的页面。
- OPTIONS:允许客户端查看服务器的性能。
- PATCH:用于对资源进行部分修改。
- CONNECT:HTTP/1.1协议中预留给能够将连接改为管道方式的代理服务器。
- TRACE:回显服务器收到的请求,主要用于测试或诊断。
三、请求头(Headers)
在发送HTTP请求时,通常需要设置请求头以模拟浏览器行为或传递额外信息。常见的请求头包括:
- User-Agent:客户端标识,告诉服务器客户端使用的操作系统、浏览器等信息。
- Accept:指定客户端能够接收的内容类型。
- Accept-Encoding:指定客户端支持的内容编码类型。
- Accept-Language:指定客户端优先使用的语言。
- Connection:指定客户端是否希望保持连接。
- Cookie:用于在HTTP请求中传递会话信息。
四、注意:
1、get 传递数据需要使用params
2、connection:指定客户端是否希望保持连接
3、cookie 用于在HTTP请求中传递会话信息
4、post 传递数据使用data传值
5、'w' 模式表示"写入模式"
6、'wb' 二进制格式写入文件
7、Cookie在爬虫中的作用不可小觑。它不仅能够帮助爬虫维持会话状态、提高爬取效率,还能够增强爬虫的适应性,甚至帮助爬虫绕过一些网站的反爬机制。