Python-HTTP 客户端


在 http 协议中,来自客户端的请求到达服务器并获取一些数据和元数据(假设它是有效请求)。我们可以使用 python requests 模块中的各种函数来分析来自服务器的响应。下面的Python程序在客户端运行并显示服务器发送的响应结果。

获得初步回应

在下面的程序中,请求模块中的 get 方法从服务器获取数据,并以纯文本格式打印。

import requests
r = requests.get('https://httpbin.org/')
print(r.text)[:200]

当我们运行上面的程序时,我们得到以下输出 -

<!DOCTYPE html >
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>httpbin.org</title>
  <link 
href="https://fonts.googleapis.com/css?family=Open+Sans:400,700|Source+Code+Pro:300,600|Titillium+

获取会话对象响应

Session 对象允许您在请求之间保留某些参数。它还会在 Session 实例发出的所有请求中保留 cookie。如果您向同一主机发出多个请求,则底层 TCP 连接将被重用。

import requests
s = requests.Session()

s.get('http://httpbin.org/cookies/set/sessioncookie/31251425')
r = s.get('http://httpbin.org/cookies')

print(r.text)

当我们运行上面的程序时,我们得到以下输出 -

{"cookies":{"sessioncookie":"31251425"}}

处理错误

如果由于服务器处理请求时出现问题而引发一些错误,Python 程序可以使用超时参数优雅地处理引发的异常,如下所示。程序将等待超时错误的定义值,然后引发超时错误。

requests.get('http://github.com', timeout=10.001)