requests库之发送get请求

一、前言

对于requests库,常用来做接口自动化,也在爬虫领域有较多应用。requests库是在urllib库的基础上进行的二次开发,使得python发送HTTP请求变得

更为便捷。

 

二、发送get请求

1,在使用requests库时,需要先导入requests库。

import requests

2,传入get请求所需要的参数,并调用get方法,我们以百度为例。

baidu_url = "https://www.baidu.com/"

response = requests.get(baidu_url)

如果需要传入请求参数,则需将参数(字典格式),传入params,如下示例:

import requests

baidu_url = "https://www.baidu.com/"

params = {"wd": "python"}

response = requests.get(baidu_url, params=params)

3,若需要传入请求头,则需将请求头(字典格式),传入headers,如下示例:

import requests

baidu_url = "https://www.baidu.com/s"

params = {"wd": "python"}
headers = {"Content-Type": "html"}

response = requests.get(baidu_url, headers=headers, params=params)

总结:

对于get请求,一般需要传入的参数有url,如有需要,需要传入关键字参数:headers,params

 

三、get请求的响应

get请求返回一个Response对象,见如下示例:

import requests

baidu_url = "https://www.baidu.com"

response = requests.get(baidu_url)

print(response)

打印结果:

 

我们可以看到,get请求返回的是一个Response对象。

我们可以通过Response对象获得什么信息呢?以下只是部分内容,更多内容可查阅requests库的相关信息。

1,获取返回状态码:Response对象调用status_code属性

2,获取文本形式的返回报文实体:Response对象调用text属性

3,获取二进制形式(bytes类型)的返回报文实体:Response对象调用content属性

4,获取响应头:Response对象调用headers属性

5,获取服务端的编码格式:Response对象调用encoding属性

6,获取服务端返回的Cookies:Response对象调用cookies属性

7,获取请求相关信息:Response对象调用request(requests库将请求相关的信息也封装在了Response对象中,可根据Reponse对象中的

request属性进而获取更多请求相关信息,如请求url:Response对象调用request.url

我们看一个示例:

import requests

baidu_url = "https://www.baidu.com"

response = requests.get(baidu_url)

print(response.text)
print(response.content)
print(response.headers)
print(response.status_code)
print(response.request.url)

 

posted @ 2022-05-30 09:46  Target_L  阅读(1890)  评论(0)    收藏  举报