httplib的简单介绍
简介
在Python中,httplib是一个用于进行HTTP通信的库。它提供了一些方便的方法来发送HTTP请求和处理响应。本文将介绍httplib库的使用方法和一些常见的应用场景。
多级标题
1. 发送HTTP请求
1.1 get()方法
1.2 post()方法
2. 处理HTTP响应
2.1 获取响应内容
2.2 获取响应头信息
2.3 获取响应状态码
2.4 处理错误响应
内容详细说明
1. 发送HTTP请求
httplib提供了get()和post()方法来发送HTTP请求。调用get()时需要传入一个URL,它会发送一个GET请求并返回服务器的响应。示例代码如下:
```python
import httplib
conn = httplib.HTTPConnection("www.example.com")
conn.request("GET", "/path/to/page")
response = conn.getresponse()
print(response.status)
print(response.read())
```
与get()类似,调用post()时需要传入一个URL和要POST的数据。示例代码如下:
```python
import httplib
headers = {"Content-type": "application/x-www-form-urlencoded", "Accept": "text/plain"}
params = "username=test&password=123456"
conn = httplib.HTTPConnection("www.example.com")
conn.request("POST", "/path/to/page", params, headers)
response = conn.getresponse()
print(response.status)
print(response.read())
```
2. 处理HTTP响应
通过get()或post()方法发送HTTP请求后,会得到一个HttpResponse对象。可以使用该对象来处理响应。
2.1 获取响应内容
使用response.read()方法可以获取响应的内容。示例代码如下:
```python
import httplib
conn = httplib.HTTPConnection("www.example.com")
conn.request("GET", "/path/to/page")
response = conn.getresponse()
content = response.read()
print(content)
```
2.2 获取响应头信息
使用response.getheader()方法可以获取响应的头信息。示例代码如下:
```python
import httplib
conn = httplib.HTTPConnection("www.example.com")
conn.request("GET", "/path/to/page")
response = conn.getresponse()
content_type = response.getheader("Content-Type")
print(content_type)
```
2.3 获取响应状态码
使用response.status可以获取响应的状态码。示例代码如下:
```python
import httplib
conn = httplib.HTTPConnection("www.example.com")
conn.request("GET", "/path/to/page")
response = conn.getresponse()
status_code = response.status
print(status_code)
```
2.4 处理错误响应
在处理HTTP响应时,可能会遇到错误响应。可以使用response.status来判断响应的状态码,如果不是200则表示出现错误。示例代码如下:
```python
import httplib
conn = httplib.HTTPConnection("www.example.com")
conn.request("GET", "/path/to/page")
response = conn.getresponse()
if response.status == 200:
print(response.read())
else:
print("Error: " + str(response.status))
```