使用 python 请求对 POST 请求进行流水线处理

Pipelining POST requests with python-requests

假设我可以验证一堆 POST 请求实际上在逻辑上是独立的,我如何使用 python-requests 设置 HTTP 管道并强制它允许 POST 请求在筹备中?

有人有工作示例吗?

P.S。加分,如果管道突然中断,如何处理未完成请求的错误?

P.P.S。 grequests 在这种情况下不是一个选项。

requestsdoes not support HTTP pipelining

您可以通过使用 grequests 近似 流水线,这使得并行 运行 许多请求更容易,但每个并行请求仍将使用新的TCP 连接。

requests 池连接,如果远程服务器允许,则保持 TCP 连接打开,但这只对顺序连接有帮助,请求和响应仍然必须交替)。

可以使用内置的 httplib 完成流水线请求,但只能通过访问其 public 接口下的连接和响应对象。 This snippet 演示。

编辑:Python3 的更新版本:https://github.com/urllib3/urllib3/issues/52#issuecomment-109756116