Я пытаюсь открыть страницу, используя urllib2, но получаю сообщения об ошибках тайм-аута соединения. Строка, которую я использую: f = urllib2.urlopen(url)
f = urllib2.urlopen(url)
Точная ошибка:
URLError: <urlopen error [Errno 110] Connection timed out>
urllib2 уважает robots.txt.Многие сайты по умолчанию блокируют User-Agent.
urllib2
User-Agent
Попробуйте добавить новый User-Agent, создав Request объекты и используя их в качестве аргументов для urlopen:
Request
urlopen
import urllib2 request = urllib2.Request('http://www.example.com/') request.add_header('User-agent', 'Mozilla/5.0 (Linux i686)') response = urllib2.urlopen(request)
Несколько подробныхдоступны прогоны, такие как http://www.doughellmann.com/PyMOTW/urllib2/
Как общая стратегия, откройте wireshark и наблюдайте за трафиком, генерируемым urllib2.urlopen(url).Возможно, вы сможете увидеть, откуда исходит ошибка.
urllib2.urlopen(url)