Http - Ошибка туннельного подключения: 403 Запрещенная ошибка при очистке веб-страниц Python

Я пытаюсь очистить веб-сайт http, и я получаю сообщение об ошибке ниже, когда пытаюсь прочитать веб-сайт.

HTTPSConnectionPool(host='proxyvipecc.nb.xxxx.com', port=83): Max retries exceeded with url: http://campanulaceae.myspecies.info/ (Caused by ProxyError('Cannot connect to proxy.', OSError('Tunnel connection failed: 403 Forbidden',)))

Ниже приведен код, который я написал для аналогичного веб-сайта. Я попытался использовать urllib и пользовательский агент, и проблема осталась.

url = "http://campanulaceae.myspecies.info/"

response = requests.get(url, headers={'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.77 Safari/537.36'})
soup = BeautifulSoup(response.text, 'html.parser')

Может ли кто-нибудь помочь мне с проблемой. заранее спасибо


person anonymous13    schedule 18.02.2020    source источник
comment
Как часто вы пытаетесь его поцарапать?   -  person Jakob F    schedule 18.02.2020
comment
Как вы это решили?   -  person Andrés Quiroz Valdovinos    schedule 15.03.2021


Ответы (2)


вы должны попытаться добавить прокси при запросе URL-адреса.

proxyDict = { 
          'http'  : "add http proxy", 
          'https' : "add https proxy"
        }

requests.get(url, proxies=proxyDict)

дополнительную информацию можно найти здесь

person Sanjay    schedule 18.02.2020
comment
Я пробовал добавлять прокси, никаких ошибок не выдает. Но когда я пытаюсь извлечь текст, он показывает, что веб-страница заблокирована. ***‹html› ‹head› ‹title›Веб-страница заблокирована‹/title› ‹meta content=text/html; charset=utf-8 http-equiv=Content-Type/› *** - person anonymous13; 18.02.2020

Я пытался использовать User-Agent: Defined, и это сработало для меня.

url = "http://campanulaceae.myspecies.info/"
headers = {
"Accept-Language" : "en-US,en;q=0.5",
"User-Agent": "Defined",
}
response = requests.get(url, headers=headers)
response.raise_for_status()
data = response.text
soup = BeautifulSoup(data, 'html.parser')
print(soup.prettify())

Если вы получили сообщение об ошибке bs4.FeatureNotFound: Не удалось найти построитель дерева с запрошенными вами функциями: html-parser. Тогда это означает, что вы используете не тот синтаксический анализатор, вам нужно импортировать lxml вверху и установить модуль, а затем использовать lxml вместо html.parser при приготовлении супа.

person Tonny Luganda    schedule 01.07.2021