Python 的 requests 包是一个简单易用的 HTTP 库,用于发送各种 HTTP 请求。以下是 requests 包中一些常用的函数及其用途:
-
requests.get(url, params=None, **kwargs)
发送一个 GET 请求到指定的 url。params 是一个可选参数,用于传递查询参数。**kwargs 用于传递其他关键字参数,如 headers、cookies 等。 -
requests.post(url, data=None, json=None, **kwargs)
发送一个 POST 请求到指定的 url。data 用于传递表单数据,json 用于传递 JSON 数据。**kwargs 同样用于传递其他关键字参数。 -
requests.put(url, data=None, files=None, **kwargs)
发送一个 PUT 请求。data 可以是表单数据或者 JSON 数据,files 用于传递文件。 -
requests.delete(url, **kwargs)
发送一个 DELETE 请求。 -
requests.head(url, **kwargs)
发送一个 HEAD 请求,这个方法通常用于获取资源的元数据,而不是资源本身。 -
requests.options(url, **kwargs)
发送一个 OPTIONS 请求,这个方法用于描述 HTTP 请求的不同选项。 -
requests.patch(url, data=None, files=None, **kwargs)
发送一个 PATCH 请求,通常用于对资源进行部分更新。 -
requests.request(method, url, **kwargs)
这是一个通用的方法,用于发送任意的 HTTP 请求。method 参数是你要发送的 HTTP 方法的字符串(如 ‘GET’, ‘POST’, ‘PUT’ 等)。 -
requests.Session()
创建一个 Session 对象,它允许你跨请求保持某些参数。这对于维持会话状态非常有用。 -
response.raise_for_status()
这个方法会检查响应对象(response)的状态码。如果状态码表示一个错误(如 4xx 或 5xx),它会抛出一个 HTTPError 异常。 -
response.json()
将响应内容解码为 JSON 格式。这个方法仅适用于返回 JSON 格式数据的响应。 -
response.text
获取服务器响应的内容,以 Unicode 形式表示。 -
response.content
获取服务器响应的内容,以字节形式表示。 -
response.headers
一个字典,包含了响应的 HTTP 头部信息。 -
response.status_code
响应的 HTTP 状态码。 -
response.url
实际请求的 URL,这在重定向发生时特别有用。 -
response.cookies
包含了服务器发送的所有 cookies。 -
response.history
如果服务器响应了重定向,这个属性包含了一个响应列表,包含了重定向链中的所有响应。
这些函数和属性为 Python 开发者提供了丰富的 HTTP 客户端功能,使得与 HTTP 服务交互变得非常简单。在使用 requests 包时,务必注意检查响应状态码和异常处理,以确保程序的健壮性。