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

Python中如何使用clientClient()发送GET请求

发布时间:2023-12-29 10:26:33

在Python中可以使用http.client模块中的HTTPConnection类来发送GET请求。下面是一个使用例子,该例子演示如何使用http.client发送GET请求:

import http.client

# 创建HTTPConnection对象
conn = http.client.HTTPConnection("www.example.com")

# 发送GET请求
conn.request("GET", "/")

# 获取响应
response = conn.getresponse()

# 打印状态码和响应头
print("Status:", response.status)
print("Headers:", response.getheaders())

# 读取响应内容
data = response.read()

# 打印响应内容
print("Response:", data.decode())

# 关闭连接
conn.close()

上述代码首先创建一个HTTPConnection对象,指定要连接的主机地址。然后使用request()方法发送GET请求,使用参数"GET"表示发送GET请求,根据需要可以指定请求的路径以及其他请求头信息。接着使用getresponse()方法获取响应对象,可以通过调用其status属性获取响应状态码,调用getheaders()方法获取响应头信息。此外,还可以通过调用read()方法读取响应内容,需要注意的是需要根据具体情况进行解码,例如使用decode()方法将响应内容解码为字符串。最后使用close()方法关闭连接。

当需要发送带参数的GET请求时,可以在请求路径上添加参数,例如:

conn.request("GET", "/search?q=python")

其中,q为参数名称,python为参数值。

需要注意的是,上述例子中的请求是同步阻塞的方式发送和接收响应,即在发送请求后会一直等待服务器的响应,直到接收到响应后才会执行后续代码。如果需要使用异步非阻塞方式发送和接收请求,则可以考虑使用aiohttp库。