Python Requests库的基本用法和常见应用场景

发布时间:2023年12月21日

? ? ? ? ?Requests是Python中常用的HTTP库,它提供了方便的HTTP请求和响应处理功能。在本文中,我们将介绍Requests库的基本用法和常见应用场景。

安装Requests库

在使用Requests库之前,需要先安装它。可以使用pip命令进行安装:

pip install requests

发送HTTP请求

使用Requests库发送HTTP请求非常方便。下面是一个简单的例子:

python

import requests

response = requests.get('http://www.example.com')

print(response.text)

在这个例子中,我们使用requests.get方法发送了一个GET请求,并打印了响应内容。可以看到,我们只需要提供一个URL参数即可发送请求。

如果需要发送POST请求,可以使用requests.post方法。例如:

python

import requests

data = {'key': 'value'}

response = requests.post('http://www.example.com', data=data)

print(response.text)

在这个例子中,我们使用requests.post方法发送了一个POST请求,并提供了一个字典类型的数据。这个数据将会被编码为表单形式,并发送到服务器。

处理HTTP响应

使用Requests库发送HTTP请求后,会得到一个HTTP响应对象。这个对象包含了服务器返回的所有信息,例如状态码、响应头和响应体等。

下面是一个例子,演示如何获取HTTP响应的状态码和响应头:

python

import requests

response = requests.get('http://www.example.com')

print(response.status_code)

print(response.headers)

在这个例子中,我们使用response.status_code属性获取了HTTP响应的状态码,使用response.headers属性获取了响应头。

如果需要获取响应体,可以使用response.text属性获取文本形式的响应体,或使用response.content属性获取二进制形式的响应体。例如:

python

import requests

response = requests.get('http://www.example.com')

print(response.text)

print(response.content)

在这个例子中,我们使用response.text属性获取了文本形式的响应体,使用response.content属性获取了二进制形式的响应体。

处理HTTP错误

在使用Requests库发送HTTP请求时,可能会遇到各种HTTP错误。例如,404表示请求的资源不存在,500表示服务器内部错误等。

Requests库提供了requests.exceptions模块,用于处理HTTP错误。下面是一个例子,演示如何处理404错误:

python

import requests

try:

????response = requests.get('http://www.example.com/not_found')

????response.raise_for_status()

except requests.exceptions.HTTPError as e:

????print(e)

在这个例子中,我们使用response.raise_for_status()方法检查HTTP响应的状态码。如果状态码不是200,则会抛出HTTPError异常。

发送HTTP请求的参数

在使用Requests库发送HTTP请求时,可以提供各种参数,例如请求头、请求体和查询参数等。

下面是一个例子,演示如何发送带有查询参数的GET请求:

python

import requests

params = {'key1': 'value1', 'key2': 'value2'}

response = requests.get('http://www.example.com', params=params)

print(response.url)

在这个例子中,我们使用params参数提供了查询参数。这些参数将会被编码为URL的查询字符串,并拼接到URL后面。

如果需要发送带有请求头和请求体的POST请求,可以使用headers和data参数。例如:

python

import requests

headers = {'Content-Type': 'application/json'}

data = {'key': 'value'}

response = requests.post('http://www.example.com', headers=headers, json=data)

print(response.text)

在这个例子中,我们使用headers参数提供了请求头,使用json参数提供了请求体。这个请求体将会被编码为JSON格式,并发送到服务器。

? ? ? ?在本文中,我们介绍了Requests库的基本用法和常见应用场景。使用Requests库可以方便地发送HTTP请求和处理HTTP响应,是Python中常用的HTTP库之一。

文章来源:https://blog.csdn.net/syhttp/article/details/135105559
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。