使用Python的requests库来发送HTTP请求的操作指南

 更新时间:2025年08月19日 09:08:48   作者:喵手  
使用 Python 的 requests 库发送 HTTP 请求是非常简单和直观的,requests 库提供了丰富的 API,可以发送各种类型的 HTTP 请求,下面我会介绍一些常用的 HTTP 请求方式,并提供实际的代码示例,需要的朋友可以参考下

前言

使用 Python 的 requests 库发送 HTTP 请求是非常简单和直观的。requests 库提供了丰富的 API,可以发送各种类型的 HTTP 请求,如 GETPOSTPUTDELETE 等。下面我会介绍一些常用的 HTTP 请求方式,并提供实际的代码示例。

1. 安装 requests 库

如果你还没有安装 requests 库,可以通过以下命令进行安装:

pip install requests

2. 发送 GET 请求

GET 请求通常用于从服务器获取数据。例如,你想获取一个网页的内容,可以使用以下代码:

import requests

# 发送 GET 请求
response = requests.get('https://www.example.com')

# 打印返回的状态码
print('状态码:', response.status_code)

# 打印返回的内容(文本)
print('返回内容:', response.text)

在这个例子中,我们使用 requests.get() 方法发送 GET 请求,response.status_code 获取请求的状态码,response.text 返回服务器的响应内容。

3. 发送 POST 请求

POST 请求通常用于提交数据到服务器。例如,提交一个表单数据或者向服务器提交一些 JSON 数据,可以使用以下代码:

import requests

# 发送 POST 请求并提交数据
data = {'username': 'testuser', 'password': 'testpassword'}
response = requests.post('https://www.example.com/login', data=data)

# 打印返回的状态码和返回内容
print('状态码:', response.status_code)
print('返回内容:', response.text)

在这个例子中,我们使用 requests.post() 方法发送 POST 请求,并传递一个字典 data 作为请求的表单数据。

4. 发送带有 JSON 数据的 POST 请求

如果你需要发送 JSON 格式的数据,可以使用 json 参数:

import requests
import json

# 要发送的 JSON 数据
data = {'name': 'John', 'age': 30}

# 发送 POST 请求并提交 JSON 数据
response = requests.post('https://www.example.com/api', json=data)

# 打印返回的状态码和返回内容
print('状态码:', response.status_code)
print('返回内容:', response.json())

在这个例子中,我们使用 json=data 直接将字典数据转换为 JSON 格式并发送给服务器。

5. 发送带有 Headers 的请求

有时我们需要在请求中添加一些 HTTP 头部信息(如 User-Agent、Authorization 等)。可以通过 headers 参数来指定:

import requests

# 设置请求头
headers = {
    'User-Agent': 'Mozilla/5.0',
    'Authorization': 'Bearer your_token'
}

# 发送带有头部信息的 GET 请求
response = requests.get('https://www.example.com', headers=headers)

# 打印返回的状态码和返回内容
print('状态码:', response.status_code)
print('返回内容:', response.text)

6. 发送带有查询参数的 GET 请求

有时我们需要在 URL 中添加查询参数,可以通过 params 参数来传递:

import requests

# 查询参数
params = {'q': 'python', 'page': 1}

# 发送 GET 请求并携带查询参数
response = requests.get('https://www.example.com/search', params=params)

# 打印返回的状态码和返回内容
print('状态码:', response.status_code)
print('返回内容:', response.text)

7. 处理响应

requests 库的响应对象提供了很多方法来帮助我们处理响应数据:

  • response.status_code: 获取响应的状态码。
  • response.text: 获取响应的文本内容(通常是 HTML 或 JSON 格式)。
  • response.json(): 如果响应内容是 JSON 格式,可以用此方法直接将响应解析为 JSON 对象。
  • response.content: 获取响应的原始内容(字节格式),适用于二进制文件如图片、音频等。

8. 处理请求超时

有时请求可能会因为网络问题或服务器超时而失败。可以通过 timeout 参数来设置请求的超时时间:

import requests

try:
    response = requests.get('https://www.example.com', timeout=5)
    print('状态码:', response.status_code)
except requests.exceptions.Timeout:
    print("请求超时!")

在这个例子中,我们设置了一个 5 秒的超时时间。如果请求在 5 秒内没有完成,就会抛出一个 Timeout 异常。

总结

使用 requests 库来发送 HTTP 请求是非常方便和直观的。它能够帮助我们高效地处理网络请求,支持各种 HTTP 方法、查询参数、请求头、JSON 数据处理等。只要你熟练掌握这些基本用法,就能轻松地在 Python 中进行 HTTP 请求操作!

以上就是使用Python的requests库来发送HTTP请求的操作指南的详细内容,更多关于Python requests发送HTTP请求的资料请关注脚本之家其它相关文章!

相关文章

  • Python3按一定数据位数格式处理bin文件的方法

    Python3按一定数据位数格式处理bin文件的方法

    今天小编就为大家分享一篇Python3按一定数据位数格式处理bin文件的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-01-01
  • MATLAB 如何求取离散点的曲率最大值

    MATLAB 如何求取离散点的曲率最大值

    这篇文章主要介绍了MATLAB 求取离散点的曲率最大值操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-04-04
  • Python接口自动化之接口依赖

    Python接口自动化之接口依赖

    这篇文章主要介绍了python接口自动化测试之接口数据依赖的实现方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2021-08-08
  • Python简直是万能的,这5大主要用途你一定要知道!(推荐)

    Python简直是万能的,这5大主要用途你一定要知道!(推荐)

    这篇文章主要介绍了Python主要用途,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-04-04
  • Jupyter notebook 不自动弹出网页的解决方案

    Jupyter notebook 不自动弹出网页的解决方案

    这篇文章主要介绍了Jupyter notebook 不自动弹出网页的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • Python中else的三种使用场景

    Python中else的三种使用场景

    在Python中else最常见的用法就是用在判断语句中,其实还可以用在循环语句和异常处理中。 下面来总结一下else的用法:
    2021-06-06
  • python的广播机制详解

    python的广播机制详解

    大家好,本篇文章主要讲的是python的广播机制详解,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2022-01-01
  • 利用Python生成Excel炫酷图表

    利用Python生成Excel炫酷图表

    XlsxWriter是一个用来写Excel2007和xlsx文件格式的python模块。它可以用来写文本、数字、公式并支持单元格格式化、图片、图表、文档配置、自动过滤等特性。本文将用这个模块生成酷炫的Excel图表,需要的可以参考一下
    2022-02-02
  • Python使用Scrapy下载图片的两种方式

    Python使用Scrapy下载图片的两种方式

    Scrapy是一个适用爬取网站数据、提取结构性数据的应用程序框架,它可以通过定制化的修改来满足不同的爬虫需求,本文给大家介绍了Python使用Scrapy下载图片的两种方式,需要的朋友可以参考下
    2025-08-08
  • python如何实现反向迭代

    python如何实现反向迭代

    这篇文章主要为大家详细介绍了python如何实现反向迭代,进行反向迭代,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-03-03

最新评论