requests 是 Python 中一个非常流行的 HTTP 库,它使得发送 HTTP 请求变得非常简单。以下是关于 requests.get() 方法的详细使用说明和示例:

语法

pythonrequests.get(url, params=None, **kwargs)

参数

  • url (str): 请求的 URL。
  • params (dict, optional): 查询参数,将自动转换为 URL 编码形式。
  • **kwargs: 其他可选参数,如 headers, cookies, timeout 等。

返回值

返回一个 Response 对象,包含请求的响应内容。

示例

1. 基本使用

pythonimport requests

response = requests.get('https://api.example.com/data')

# 获取响应状态码
status_code = response.status_code
print(f'Status Code: {status_code}')

# 获取响应内容(以文本形式)
text = response.text
print(text)

# 获取响应内容(以 JSON 形式,如果响应内容是 JSON)
json_data = response.json()
print(json_data)

2. 带有查询参数的 GET 请求

pythonimport requests

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

response = requests.get('https://api.example.com/data', params=params)

# URL 将会是 'https://api.example.com/data?key1=value1&key2=value2'
print(response.url)

3. 设置请求头

pythonimport requests

headers = {
    'User-Agent': 'my-app/0.0.1',
    'Accept': 'application/json'
}

response = requests.get('https://api.example.com/data', headers=headers)

# 你可以检查请求头是否设置成功
print(response.request.headers)

4. 设置超时

pythonimport requests

try:
    response = requests.get('https://api.example.com/data', timeout=5)  # 设置超时为 5 秒
    print(response.text)
except requests.exceptions.Timeout:
    print('Request timed out')

5. 发送带有身份验证信息的 GET 请求

pythonimport requests
from requests.auth import HTTPBasicAuth

response = requests.get('https://api.example.com/data', auth=HTTPBasicAuth('username', 'password'))

# 你也可以使用元组进行身份验证
response = requests.get('https://api.example.com/data', auth=('username', 'password'))

返回数据查看方法

在Python中,当你使用requests.get()方法发送HTTP GET请求时,返回的是一个Response对象。这个对象包含了从服务器获取的各种信息,比如状态码、响应头、响应内容等。下面是如何查看requests.get()返回数据的语法和示例:

语法

pythonimport requests

response = requests.get(url, params=None, **kwargs)

# 访问Response对象的属性或方法
status_code = response.status_code        # 访问HTTP状态码
headers = response.headers               # 访问响应头
text = response.text                     # 访问响应体内容(文本形式)
content = response.content               # 访问响应体内容(二进制形式)
json = response.json()                   # 如果响应体是JSON,将其解析为Python对象

示例

1. 发送GET请求并获取状态码和内容

pythonimport requests

url = 'https://api.example.com/data'
response = requests.get(url)

# 获取状态码
print('Status Code:', response.status_code)

# 获取响应内容(文本形式)
print('Response Text:', response.text)

# 如果响应是JSON格式,可以这样获取数据
try:
    data = response.json()
    print('JSON Data:', data)
except ValueError:
    print('Response content is not in JSON format.')
最后修改:2024 年 06 月 03 日
如果觉得我的文章对你有用,请随意赞赏