您的位置:

Python requests库的安装与使用教程

Python requests库是一个基于HTTP库的第三方库,将Python语言的HTTP请求处理和处理HTTP响应的功能进行了封装,使得HTTP请求更加简单方便。

一、安装requests库

1.安装方式:

pip install requests

2.验证是否安装成功:

import requests
print(requests.__version__)

如果安装成功,则会输出requests库的版本号。

二、HTTP请求

1.GET请求

在requests库中,使用get函数来实现GET方法。

import requests
url="http://www.example.com/"
response=requests.get(url)
print(response.text)

该代码实现了向http://www.example.com/发送GET方法的请求,并输出HTTP响应的文本内容。

2.POST请求

在requests库中,使用post函数来实现POST方法。

import requests
url="http://www.example.com/"
data={"key1":"value1","key2":"value2"}
response=requests.post(url,data=data)
print(response.text)

该代码实现了向http://www.example.com/发送POST方法的请求,并输出HTTP响应的文本内容。

三、HTTP响应

在requests库中接收HTTP响应,可以通过response对象中的属性来实现。

1.响应内容

通过response的text属性,可以获取HTTP响应的文本内容。

import requests
url="http://www.example.com/"
response=requests.get(url)
print(response.text)

该代码实现了向http://www.example.com/发送GET方法的请求,并输出HTTP响应的文本内容。

2.响应状态码

通过response的status_code属性,可以获取HTTP响应的状态码。

import requests
url="http://www.example.com/"
response=requests.get(url)
print(response.status_code)

该代码实现了向http://www.example.com/发送GET方法的请求,并输出HTTP响应的状态码。

3.响应头

通过response的headers属性,可以获取HTTP响应头信息。

import requests
url="http://www.example.com/"
response=requests.get(url)
print(response.headers)

该代码实现了向http://www.example.com/发送GET方法的请求,并输出HTTP响应的头信息。

四、异常处理

requests库中提供了多种异常处理方式,其中常用的一个异常是requests.exceptions.RequestException。

import requests
try:
    response=requests.get("http://www.unknown.com/")
    response.raise_for_status()
except requests.exceptions.RequestException as e:
    print(e)

该代码实现了向http://www.unknown.com/发送GET方法的请求,如果发生错误,将打印错误信息。

五、HTTPS请求

requests库中同样支持SSL/TLS验证,这是一种重要的保护机制,可以使用verify参数来进行设置。

import requests
url="https://www.example.com/"
response=requests.get(url,verify=True)
print(response.text)

该代码实现了向https://www.example.com/发送GET方法的请求,并输出HTTP响应的文本内容。

六、设置请求头

请求头是HTTP请求中的一部分,用于向服务器传递一些额外的信息。在requests库中可以使用headers参数来设置请求头。

import requests
url="http://www.example.com/"
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.36"}
response=requests.get(url,headers=headers)
print(response.text)

该代码实现了向http://www.example.com/发送GET方法的请求,并设置了请求头,输出HTTP响应的文本内容。

七、文件上传

在requests库中可以使用post函数进行上传文件操作。

import requests
url="http://www.example.com/"
files={"file":open("abc.txt","rb")}
response=requests.post(url,files=files)
print(response.text)

该代码实现了向http://www.example.com/发送POST方法的请求,并上传名为abc.txt的文件,输出HTTP响应的文本内容。