使用httplib2时是否可以显示文件在python中下载的百分比?我知道你可以使用urllib2,但我想使用httplib2。
答案 0 :(得分:2)
没有。 httplib2
没有任何进展信标回调,所以它只是阻塞直到请求完成。
答案 1 :(得分:0)
我不太确定如何使用async() 似乎它已经正式解决了。
并且可以通过自己修改httplib2: (向request()func添加回调函数arg) Http中的: 在def _request中:将其修改为:
def _request(self, conn, host, absolute_uri, request_uri, method, body, headers, redirections, cachekey,callback=None):
def _conn_requst中的:将其修改为:
def _conn_request(self, conn, request_uri, method, body, headers,callback=None):
修改以下内容
if method == "HEAD":
conn.close()
else:
if not callback:
content = response.read()
else:
while 1:
content=response.read(callback[0])
if not content:break
callback[1]()
使用时你可以这样输入:
resp, content = h.request("http://stackoverflow.com", [8192,callbackfunc])
第一个8192是块大小,callbackfunc是你定义的回调函数(比如在urllib中)