Python - HTTP 客户端

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


获取初始响应

在下面的程序中,requests 模块的 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 对象允许您跨请求保留某些参数。 它还会在 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)