How can I make a "keep alive" HTTP request using Python's urllib2?
解决方案
Use the urlgrabber library. This includes an HTTP handler for urllib2 that supports HTTP 1.1 and keepalive:
>>> import urllib2
>>> from urlgrabber.keepalive import HTTPHandler
>>> keepalive_handler = HTTPHandler()
>>> opener = urllib2.build_opener(keepalive_handler)
>>> urllib2.install_opener(opener)
>>>
>>> fo = urllib2.urlopen('http://www.python.org')
Note: you should use urlgrabber version 3.9.0 or earlier, as the keepalive module has been removed in version 3.9.1
There is a port of the keepalive module to Python 3.
该博客介绍了如何在Python中利用urllib2库和urlgrabber的HTTPHandler来实现HTTP1.1的保持连接功能。通过创建并安装HTTPHandler,可以确保多个HTTP请求能在同一连接上进行,提高效率。注意需使用urlgrabber 3.9.0或更早版本,因为3.9.1版本已移除keepalive模块。此外,还提到了将keepalive模块移植到Python 3的可能性。
729

被折叠的 条评论
为什么被折叠?



