📜  使用Python进行GET和POST请求(1)

📅  最后修改于: 2023-12-03 15:22:20.805000             🧑  作者: Mango

使用Python进行GET和POST请求

在编写Web应用程序时,GET和POST请求是非常基础的请求方式。在Python中,我们可以使用其内置库requests来发送GET和POST请求并获取响应。

发送GET请求

使用requests库发送GET请求十分简单,只需要调用requests库中的get函数,并传入请求的URL即可。下面是一个简单的例子:

import requests

response = requests.get('https://www.example.com')
print(response.text)

上面代码会向https://www.example.com发送一个GET请求,并打印出响应的HTML文本。需要注意的是,如果请求失败,requests库会抛出一个异常。

发送POST请求

发送POST请求也很简单,只需要在调用requests库中的post函数时,传入请求体即可。以一个简单的登录请求为例:

import requests

data = {'username': 'admin', 'password': '123456'}
response = requests.post('https://www.example.com/login', data=data)
print(response.text)

上面代码将会向https://www.example.com/login发送一个POST请求,请求体是一个字典{'username': 'admin', 'password': '123456'}。同样地,如果请求失败,requests库会抛出一个异常。

处理请求头和响应头

请求头和响应头是HTTP请求过程中非常重要的元素,我们可以使用requests库对它们进行处理。下面是一个例子:

import requests

headers = {'User-Agent': 'Mozilla/5.0'}
response = requests.get('https://www.example.com', headers=headers)
print(response.headers)

上面代码中,在发送GET请求时,我们通过设置请求头中的User-Agent参数来模拟浏览器发出的请求。这使得返回的响应HTML将与我们在浏览器中看到的HTML基本相同。同时,我们还可以通过response.headers属性来访问响应的头部信息。

处理HTTP错误

在使用requests库时,有时需要处理HTTP错误,例如404 Not Found、403 Forbidden和500 Internal Server Error等。我们可以通过检查HTTP响应状态码来处理这些错误。下面是一个例子:

import requests

response = requests.get('https://www.example.com')
if response.status_code == 200:
    print(response.text)
else:
    print('请求失败,状态码为:', response.status_code)

上面代码中,在我们发出GET请求时,通过检查返回的状态码来判断请求是否成功。如果状态码为200,则表示请求成功,我们可以继续处理响应;否则,我们就需要处理HTTP错误了。

总的来说,使用Python发送GET和POST请求非常简单,而requests库的简单易用性使得这一过程更加轻松快捷。