У меня возникла проблема при попытке чтения данных с веб-сайта с использованием urllib в Python 3, из-за которого моя программа останавливается (она не выдает сообщения об ошибке, похоже, что она застряла в цикле).Странная часть в том, что этот же скрипт работает с любыми другими веб-сайтами, которые я пробую, кроме этого.Я проводил некоторые исследования и читал людей, говорящих об этой «HTTP-ошибке 403: запрещено», которую можно исправить с помощью пользовательского агента пользователя, чтобы открыть URL-адрес в качестве браузера, но это не решает мою проблему.
Я почти на 100% уверен, что проблема в каком-то ограничении со стороны ПК, потому что я использую ПК с работы, и у ПК, и у Сети есть некоторые ограничения, но странная вещь заключается в том, что веб-сайтоткрывается, когда я использую Chrome.
Этот код был опубликован Карди Текномо на другую тему и представляет собой интересный способ показать мою проблему.
import urllib.request
url = "http://py4e-data.dr-chuck.net/known_by_Fikret.html"
page = urllib.request.Request(url,headers={'User-Agent': 'Chrome/76.0.3809.132'})
infile = urllib.request.urlopen(page).read()
data = infile.decode()
print(data)
Более простой код, который пытается сделатьто же самое и терпит неудачу таким же образом, вот этот:
import urllib.request, urllib.parse, urllib.error
Fhandle = urllib.request.urlopen("http://py4e-data.dr-chuck.net/known_by_Fikret.html")
for lines in Fhandle:
lines = lines.decode().strip()
print(lines)
Я пытаюсь сделать что-то более сложное, но ради решения проблемы, все, что я пытаюсь сделать с этимкод предназначен для чтения HTML-страницы и печати ее содержимого, но программа всегда застревает сразу после нажатия клавиши ввода, если при этом я использую URL из этих примеров.