Python Requests库入门教程及资料汇总
2024/10/25 4:03:12
本文主要是介绍Python Requests库入门教程及资料汇总,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
本文详细介绍了requests库的内容,包括其基本概念、使用方法以及如何发送GET、POST等HTTP请求。文章还涵盖了处理HTTP响应、传递参数与数据、使用Cookies和Headers以及错误处理等实用技巧。通过这些内容,读者可以全面了解和掌握requests库的使用方法。
Requests 是一个常用的 Python HTTP 客户端库,它简化了 HTTP 请求的发送过程,提供了简单易用的接口来处理 HTTP 请求和响应。Requests 库支持 GET、POST、PUT、DELETE 等多种 HTTP 方法,并且支持处理 Cookies 和 Headers,能够方便地发送和接收各种类型的 HTTP 数据。
要使用 Requests 库,首先需要安装它。可以通过 Python 的包管理工具 pip 来安装 Requests 库。以下是安装步骤:
pip install requests
- Session 对象:用于持久化跨请求的数据。例如,同一个 Session 对象在发送多个请求时会保持相同的 Cookies。
- Response 对象:表示服务器的响应,可以从中获取响应内容、状态码、Headers 等信息。
- Request 对象:表示 HTTP 请求,可以设置 URL、Headers、数据等。
以下是这些对象的基本使用示例:
import requests # 创建一个 Session 对象 session = requests.Session() # 使用 Session 对象发送 GET 请求 response = session.get('https://api.github.com') print(response.text) # 通过 Session 对象发送 POST 请求 url = 'https://httpbin.org/post' data = {'key': 'value'} response = session.post(url, data=data) print(response.text)
使用 Requests 发送 GET 请求非常简单。以下是一个示例代码,展示了如何发送一个 GET 请求并获取响应内容:
import requests response = requests.get('https://api.github.com') print(response.text)
这段代码将发送一个 GET 请求到 https://api.github.com
,并打印出响应的内容。
发送 POST 请求时,可以通过 requests.post
方法来实现。下面是一个示例代码,展示了如何发送一个包含数据的 POST 请求:
import requests url = 'https://httpbin.org/post' data = {'key': 'value'} response = requests.post(url, data=data) print(response.text)
这段代码将发送一个 POST 请求到 https://httpbin.org/post
,并将 {'key': 'value'}
作为数据发送。
除了 GET 和 POST,Requests 还支持其他 HTTP 方法,例如 PUT 和 DELETE。以下是一个使用 requests.put
发送 PUT 请求的示例:
import requests url = 'https://httpbin.org/put' data = {'key': 'value'} response = requests.put(url, data=data) print(response.text)
下面是一个使用 requests.delete
发送 DELETE 请求的示例:
import requests url = 'https://httpbin.org/delete' response = requests.delete(url) print(response.text)
可以通过 response.text
获取响应的文本内容。以下是一个示例代码,展示了如何获取响应的内容:
import requests response = requests.get('https://api.github.com') print(response.text)
可以通过 response.status_code
获取响应的状态码。以下是一个示例代码,展示了如何获取响应的状态码:
import requests response = requests.get('https://api.github.com') print(response.status_code)
获取Cookies
可以通过 response.cookies
获取响应中的 Cookies。以下是一个示例代码,展示了如何获取响应中的 Cookies:
import requests response = requests.get('https://httpbin.org/cookies/set/sessioncookie/123456789') print(response.cookies)
获取Headers
可以通过 response.headers
获取响应中的 Headers。以下是一个示例代码,展示了如何获取响应中的 Headers:
import requests response = requests.get('https://api.github.com') print(response.headers)
可以通过 params
参数来传递 URL 参数。以下是一个示例代码,展示了如何传递 URL 参数:
import requests url = 'https://httpbin.org/get' params = {'key1': 'value1', 'key2': 'value2'} response = requests.get(url, params=params) print(response.text)
通过 data
参数传递 POST 请求中的数据。以下是一个示例代码,展示了如何发送包含数据的 POST 请求:
import requests url = 'https://httpbin.org/post' data = {'key': 'value'} response = requests.post(url, data=data) print(response.text)
通过 json
参数传递 JSON 数据。以下是一个示例代码,展示了如何发送包含 JSON 数据的 POST 请求:
import requests url = 'https://httpbin.org/post' data = {'key': 'value'} response = requests.post(url, json=data) print(response.text)
可以通过 cookies
参数来添加 Cookies 发送请求。以下是一个示例代码,展示了如何添加 Cookies 发送请求:
import requests url = 'https://httpbin.org/cookies/set/sessioncookie/123456789' response = requests.get(url) print(response.text) url = 'https://httpbin.org/cookies' response = requests.get(url, cookies={'cookie_name': 'cookie_value'}) print(response.text)
可以通过 headers
参数来自定义请求头。以下是一个示例代码,展示了如何自定义请求头发送请求:
import requests url = 'https://httpbin.org/headers' headers = {'User-Agent': 'my-app/0.4.0'} response = requests.get(url, headers=headers) print(response.text)
通过 Session
对象可以保持会话信息,例如 Cookies。以下是一个示例代码,展示了如何使用 Session
对象保持会话:
import requests s = requests.Session() s.get('https://httpbin.org/cookies/set/sessioncookie/123456789') response = s.get('https://httpbin.org/cookies') print(response.text)
可以通过 response.raise_for_status()
方法来捕获 HTTP 错误。以下是一个示例代码,展示了如何捕获和处理 HTTP 错误:
import requests response = requests.get('https://httpbin.org/status/404') try: response.raise_for_status() except requests.exceptions.HTTPError as error: print(f"HTTP error occurred: {error}")
HTTP 状态码用于描述请求的状态。以下是一些常见的 HTTP 状态码及其含义:
- 200 OK:请求成功。
- 400 Bad Request:请求有语法错误或无法解析。
- 401 Unauthorized:请求需要用户认证。
- 403 Forbidden:服务器理解请求但拒绝执行。
- 404 Not Found:服务器找不到请求的资源。
- 500 Internal Server Error:服务器内部错误。
通过 response.status_code
可以获取响应的状态码,并根据状态码进行相应的错误处理。
这篇关于Python Requests库入门教程及资料汇总的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-20Python编程入门指南
- 2024-12-20Python编程基础与进阶
- 2024-12-19Python基础编程教程
- 2024-12-19python 文件的后缀名是什么 怎么运行一个python文件?-icode9专业技术文章分享
- 2024-12-19使用python 把docx转为pdf文件有哪些方法?-icode9专业技术文章分享
- 2024-12-19python怎么更换换pip的源镜像?-icode9专业技术文章分享
- 2024-12-19Python资料:新手入门的全面指南
- 2024-12-19Python股票自动化交易实战入门教程
- 2024-12-19Python股票自动化交易入门教程
- 2024-12-18Python量化入门教程:轻松掌握量化交易基础知识