Тайм-аут FancyURLopener Python - PullRequest
       14

Тайм-аут FancyURLopener Python

0 голосов
/ 17 марта 2010

Есть ли способ установить время ожидания соединения для FancyURLopener ()? Я использую FancyURLopener.retrieve () для загрузки файла, но иногда он просто зависает, и это все ... Я думаю, это потому, что он все еще пытается подключиться, и это невозможно. Так есть ли способ установить этот тайм-аут?

Спасибо за каждый ответ

Ответы [ 2 ]

4 голосов
/ 17 марта 2010

Если вы хотите использовать retrieve() с таймаутом, вы можете установить его в модуле socket.

import socket
socket.setdefaulttimeout(5)

Источник: http://docs.python.org/py3k/howto/urllib2.html#sockets-and-layers

1 голос
/ 17 марта 2010

Извините, решено. Я не понимал, что могу использовать что-то вроде этого ...

fileName = string.split(url, '/')[-1]
data = urllib2.urlopen(url, timeout = 5)              //Connection timeout set to 5 secs
newF = open(os.path.join(os.getcwd(), fileName), "wb")
newF.write(data.read())
newF.close()
...