[Twisted-Python] Setting a timeout for HTTPDownloader
Glyph Lefkowitz
glyph at twistedmatrix.com
Tue Aug 12 07:48:29 MDT 2003
On Tuesday, August 12, 2003, at 06:27 AM, Edd Dumbill wrote:
> I'd be grateful for pointers on how to implement this, with reference
> to
> twisted/web/spider.py. Essentially what I want is a timeout to cause
> an
> error that will result in SpiderSender.downloadFailed being invoked,
> pretty much as for any other error relating to the HTTP connection
> does.
I certainly haven't tested this, but in your SpiderSender subclass, you
probably want something like
myTimeout = 120 # seconds
def notifyDownloadStart(self, uri):
reactor.callLater(self.myTimeout, self._timeOut, uri)
# rest of notifyDownloadStart
def _timeOut(self, uri):
if self.downloaders.has_key(uri):
self.downloaders[uri].loseConnection()
More information about the Twisted-Python
mailing list