My application uses the ‘twisted.web.client.Agent’ to get web content. But the Agent class requires a ‘reactor’ instance to initiate. If I start my application using the ‘twistd’, there will be no ‘reactor.run()’ at all. So how can I get the ‘reactor’ instance?
My application uses the ‘twisted.web.client.Agent’ to get web content. But the Agent class requires
Share
I wish there were a better answer, but the way to get the current, active reactor in a Twisted application is:
The important thing is to not do this all over the place, but once near the “top” of your application code, so that you can easily replace the reactor for testing purposes or to modify its behavior in other ways (for example, you could potentially change
connectTCPto go through a proxy). That is whyAgenttakes areactorparameter rather than importing the current one itself.