request基本使用及各种请求方式参数的示例

当我们需要向网络服务端发送请求或获取数据时,可以使用 Python 中的 requests 库。下面是关于 requests 基本使用及各种请求方式参数的示例攻略。

安装 requests 库

要使用 requests 库,首先需要在命令行中安装:

pip install requests

基本使用

在代码中导入 requests 库:

import requests

然后可以使用 requests.get() 来获取页面:

r = requests.get('https://www.google.com/')
print(r.text)

返回的 r.text 就是获取到的页面内容。如果需要传递一些参数(比如 GET 请求时的查询参数),可以在 URL 中传递或使用 params 参数:

payload = {'key1': 'value1', 'key2': 'value2'}
r = requests.get('https://www.google.com/', params=payload)

请求方式

requests 支持下列 HTTP 请求方式:

  1. GET
  2. POST
  3. PUT
  4. DELETE
  5. HEAD
  6. PATCH
  7. OPTIONS

下面依次介绍每个请求方式以及这些方式所对应的参数和示例。

GET 请求

GET 方法请求指定的页面信息,并返回响应正文。

例如:

import requests

r = requests.get('http://httpbin.org/get')
print(r.json())

上述代码中,我们使用 GET 方法向 httpbin.org 发送了一个 GET 请求,获取到了响应数据,并通过 json() 方法将响应内容转为 JSON 格式输出。

POST 请求

POST 方法提交指定的数据到 web 应用程序的指定页面。

例如:

import requests

payload = {'username': 'admin', 'password': 'admin'}
r = requests.post('http://httpbin.org/post', data=payload)
print(r.json())

上述代码中,我们向 httpbin.org 发送一个 POST 请求,并将用户名和密码分别作为 key 和 value 放入了请求报文中。同样,我们将响应数据转为 JSON 格式输出。

参数

除了 URL 和表单数据之外,requests 还支持以下参数:

headers

headers 是一个字典,可以自定义 HTTP 请求头。例如:

import requests

headers = {'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.3'}
r = requests.get('http://httpbin.org/headers', headers=headers)
print(r.json())

上述代码中,我们自定义了 headers 中的 User-Agent,也就是模拟一个 Chrome 浏览器。

cookies

cookies 是一个字典或 CookieJar,用于传输 cookie 数据。例如:

import requests

cookies = dict(cookies_are='working')
r = requests.get('http://httpbin.org/cookies', cookies=cookies)
print(r.json())

timeout

timeout 参数是请求超时时间,单位秒。例如:

import requests

r = requests.get('http://httpbin.org/get', timeout=1)

上述代码中,我们设置了 1 秒超时时间,如果 1 秒内没有响应,就会抛出 requests.exceptions.Timeout 异常。

allow_redirects

allow_redirects 用于重定向,该参数默认为 True,即允许重定向。如果设置为 False,则不会自动重定向。例如:

import requests

r = requests.get('http://httpbin.org/get', allow_redirects=False)

上述代码中,我们禁止了重定向,因此如果服务器返回重定向响应,就会得到 3xx 错误码。

总结

在使用 requests 库时,我们首先需要安装库,然后可以通过 requests.get() 发送 GET 请求,或通过 requests.post() 发送 POST 请求。requests 还支持自定义请求头、传输 cookie 数据、设置超时时间、禁止重定向等等,使用这些参数可以更灵活地操作请求和获取响应。以上是 requests 基本使用及各种请求方式参数的示例攻略,希望对大家有所帮助。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:request基本使用及各种请求方式参数的示例 - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • 性能最快的代码分析工具,Ruff 正在席卷 Python 圈!

    几天前,Python 开源社区又出了一个不小的新闻:HTTPX 和 Starlette 在同一天将在用的代码分析工具(flake8、autoflake 和 isort)统一替换成了 Ruff。 HTTPX 是一个支持异步的 HTTP 客户端,Starlette 是一个轻量级的 ASGI 框架,它们都是 Python 社区里的明星项目,目前加起来有近 20K …

    python 2023年4月18日
    00
  • Python获取二维数组的行列数的2种方法

    下面是Python获取二维数组的行列数的两种方法: 方法一:使用numpy库 numpy是Python中一个常用的科学计算库,可以方便地处理矩阵和数组等数学结构。 要使用numpy获取二维数组的行列数,可以使用shape属性。shape是返回一个元组,表示数组的维度,其中第一个值为行数,第二个值为列数。 以下是示例代码: import numpy as np…

    python 2023年6月5日
    00
  • pip报错“OSError: [Errno 13] Permission denied: ‘/usr/local/lib/python3.6/dist-packages/pip/_internal/utils/compat.py’”怎么处理?

    当使用pip安装Python包时,可能会遇到“OSError: [Errno 13] Permission denied: ‘/usr/local/lib/python3.6/dist-packages/pip/_internal/utils/compat.py’”错误。这个错误通常是由以下原因之一引起的: 权限不足:如果您没有足够的权限来访问pip安装目录…

    python 2023年5月4日
    00
  • Python最好的日期处理库pendulum的使用指南

    Python最好的日期处理库pendulum的使用指南 介绍 Pendulum是一个用于日期时间处理的Python软件包。它提供了更加简单和更加美观的 API,因此代码更加易于编写和理解,同时还提供了比 Python 内置模块 datetime 更强大的功能。 Pendulum 库的主要特点包括: 更加流畅的 API 函数式编程支持 支持时区、夏令时、Uni…

    python 2023年6月2日
    00
  • 利用Python进行数据清洗的操作指南

    利用Python进行数据清洗的操作指南 数据清洗是数据分析的重要步骤之一,它可以帮助我们去除数据中的噪声、缺失值、等,从而提高数据的质量和可靠性。本文将为您详细讲解利用Python进行数据清洗的操作指南,包括数据清洗的基本步骤、常用的数据清洗方法、以及两个示例说明。 数据清洗的基本步骤 数据清洗的基本步骤包括以下几个方面: 数据预处理:包括数据采集、数据整合…

    python 2023年5月14日
    00
  • Python实现对比两个Excel数据内容并标记出不同

    下面是Python实现对比两个Excel数据内容并标记出不同的完整实例教程。 实现思路 本文使用Python语言,利用pandas库读取Excel文件,并将数据转换为DataFrame数据结构。利用DataFrame提供的函数对两个Excel表格进行比对,找寻不同的内容,并在新的Excel表格中标记出不同的内容。 读取Excel文件,将数据转换为DataFr…

    python 2023年5月13日
    00
  • odoo 开发入门教程系列-添加修饰

    添加修饰 我们的房地产模块现在从商业角度来看是有意义的。我们创建了特定的视图,添加了几个操作按钮和约束。然而,我们的用户界面仍然有点粗糙。我们希望为列表视图添加一些颜色,并使一些字段和按钮有条件地消失。例如,当房产已出售或取消时,“已售出”和“取消”按钮应消失,因为此时不再允许更改状态。 参考: 文档关联的主题可以查看 Views. 内联视图(Inline …

    python 2023年4月18日
    00
  • python和bash统计CPU利用率的方法

    以下是详细的Python和Bash统计CPU利用率的方法攻略。 Python统计CPU利用率的方法 安装第三方库psutil 在Python中,有一个第三方库psutil,它提供了统计CPU利用率的方法。在开始之前,我们需要先安装psutil库,可通过pip命令进行安装: pip install psutil 编写Python代码 在安装完psutil库之后…

    python 2023年6月3日
    00
合作推广
合作推广
分享本页
返回顶部