python requests 使用

环境信息

  • Python 3.11.2

安装

pip install requests

常见用法

get 请求

get 请求及响应中常用的属性

>>> r = requests.get('https://csms.tech')
>>> dir(r)
[..., 'content', 'cookies', 'elapsed', 'encoding', 'headers', 'history',
'is_permanent_redirect', 'is_redirect', 'iter_content', 'iter_lines',
'json', 'links', 'next', 'ok', 'raise_for_status', 'raw', 'reason',
'request', 'status_code', 'text', 'url']

带参数的 get 请求

要在 get 请求中携带请求参数,可以使用以下方法

>>> help(requests.get)
get(url, params=None, **kwargs)
Sends a GET request.

:param url: URL for the new :class:`Request` object.
:param params: (optional) Dictionary, list of tuples or bytes to send
in the query string for the :class:`Request`.
:param \*\*kwargs: Optional arguments that ``request`` takes.
:return: :class:`Response <Response>` object
:rtype: requests.Response

>>> params = {'k1': 'v1', 'k2': 'v2'}
>>> r = requests.get('https://csms.tech', params=params)

# 设置请求头
>>> headers = {"User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.99 Safari/537.36"}
>>> response = requests.get("https://csms.tech", params = params, headers = headers)

get 方法本质上是通过创建了一个 requests.Request 对象,因此 **kwargs 可用的值可以通过查看 requests.Request 的帮助信息。

>>> help(requests.Request)

post 请求

post 方法可以发送 POST 请求到指定 url,一般格式如下:

requests.post(url, data={key: value}, json={key: value}, args)
  • url - 请求 url。

  • data - 参数为要发送到指定 url 的字典、元组列表、字节或文件对象。

  • json - 参数为要发送到指定 url 的 JSON 对象。

  • args - 为其他参数,比如 cookies、headers、verify等。