我正在使用tornado使用HTTP proxy异步获取许多网页。因此,我的许多获取都发生了错误(我的代理不可靠)。我想用另一个代理立即重试它们。这是示例:
from tornado import ioloop
from tornado import httpclient
def handle_request(response):
if response.error:
print "Error:", response.error
// HERE i want to put my retry with another proxy
else:
print response.body
ioloop.IOLoop.instance().stop()
http_client = httpclient.AsyncHTTPClient()
http_client.fetch("http://www.google.com/", handle_request)
ioloop.IOLoop.instance().start()
但是我怎样才能从handle_request向当前循环添加新的 fetch 事件?另外,我如何将变量传递给handle_request(列出我所有的代理)。