我的应用程序使用“twisted.web.client.Agent”来获取网页内容。但是 Agent 类需要一个“ react 堆”实例来启动。如果我使用“twistd”启动我的应用程序,则根本不会有“reactor.run()”。那么我怎样才能得到“ react 器”实例呢?
最佳答案
我希望有一个 better answer ,但是在 Twisted 应用程序中获取当前事件 react 器的方法是:
from twisted.internet import reactor
重要的是不要在整个地方都这样做,而是在应用程序代码的“顶部”附近这样做,这样您就可以轻松地更换 react 堆以进行测试或以其他方式修改其行为(例如,您可能会更改 connectTCP
以通过代理)。这就是为什么 Agent
采用 reactor
参数而不是导入当前参数本身。
关于python - twistd 启动 twisted 应用程序时如何获取 'reactor'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7631353/