欢迎访问宙启技术站
智能推送

Python中requests库的status_codes()方法的基本用法和常见应用场景

发布时间:2024-01-08 14:22:36

在Python中使用requests库进行网络请求时,可以使用status_codes()方法来获取HTTP响应状态码。status_codes()方法能够返回一个字典,其中包含了HTTP状态码和对应的文本描述。

基本用法:

import requests

status_codes = requests.status_codes()

常见应用场景:

1. 检查HTTP响应状态码是否为200,判断请求是否成功。

import requests

response = requests.get(url)
if response.status_code == requests.codes.ok:
    print("请求成功")
else:
    print("请求失败")

2. 获取HTTP响应的详细信息,包括状态码和文本描述。

import requests

response = requests.get(url)
print(f"状态码:{response.status_code}")
print(f"状态描述:{response.reason}")

3. 验证用户输入的URL是否合法。

import requests

def check_url(url):
    try:
        response = requests.get(url)
        if response.status_code == requests.codes.ok:
            return True
        else:
            return False
    except requests.exceptions.InvalidURL:
        return False

4. 根据HTTP状态码处理不同的逻辑。

import requests

response = requests.get(url)
if response.status_code == requests.codes.ok:
    # 处理请求成功的逻辑
    pass
elif response.status_code == requests.codes.not_found:
    # 处理请求资源未找到的逻辑
    pass
elif response.status_code == requests.codes.forbidden:
    # 处理请求被拒绝的逻辑
    pass
else:
    # 处理其他状态码的逻辑
    pass

5. 获取所有HTTP状态码的对应关系。

import requests

status_codes = requests.status_codes()
for code, description in status_codes.items():
    print(f"状态码: {code},描述:{description}")

总结:requests库的status_codes()方法可以方便地获取HTTP状态码和对应的文本描述,用于判断请求是否成功、处理不同的状态码逻辑等。使用该方法能够更加灵活地操作HTTP请求和响应。