现在我这样做:(Python3,urllib的)如何生存在HTTP/1.1使用Python的urllib
url = 'someurl'
headers = '(('HOST', 'somehost'),/
('Connection', 'keep-alive'),/
('Accept-Encoding' , 'gzip,deflate'))
opener = urllib.request.build_opener(urllib.request.HTTPCookieProcessor())
for h in headers:
opener.addheaders.append(x)
data = 'some logging data' #username, pw etc.
opener.open('somesite/login.php, data)
res = opener.open(someurl)
data = res.read()
... some stuff here...
res1 = opener.open(someurl2)
data = res1.read()
etc.
正在发生的事情是这样的;我保持登录状态(如果我没有登录,我正在获取一些不可用的内容),但是我认为每个请求之间的连接正在断开。opener.open;
我认为,因为连接速度很慢,每次都有新的连接。两个问题:
a)如何测试连接是否处于活动状态/正在死亡
b)如何使其在其他URL的请求之间保持活动状态?
照顾:)
a)嗅探流量将是检查您是否保持活力的微不足道的方法。确保服务器也支持keepalive。至于b),至少在python2.x中有一种方法可以指定一个可以存活的处理程序,但它似乎并不是默认的。 – Robert 2010-12-08 08:12:12