selenium python страница вниз — неизвестная ошибка: net ::ERR_NAME_NOT_RESOLVED

#python #selenium #google-chrome #selenium-webdriver

#python #селен #google-chrome #selenium-webdriver

Вопрос:

Итак, в настоящее время я работаю над скребком python для сбора информации о веб-сайте с помощью selenium на python. Проблема, с которой я сталкиваюсь, заключается в том, что если я перехожу на страницу, которая не работает, я получаю сообщение об ошибке: unknown error: net::ERR_NAME_NOT_RESOLVED

Я давно не использовал python, поэтому мои знания не самые лучшие.

Вот мой код

 driver = webdriver.Chrome(ChromeDriverManager().install())
try:
    driver.get('%s' %link)
except ERR_NAME_NOT_RESOLVED:
    print ("page down")
 

пример веб-сайта: http://www.whitefoxcatering.co.uk

ошибка

 Traceback (most recent call last):
  File "C:UsersSTEAppDataLocalProgramsPythonPython39selenium emailselenium test.py", line 106, in <module>
    driver.get('%s' %url)
  File "C:UsersSTEAppDataLocalPackagesPythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0LocalCachelocal-packagesPython38site-packagesseleniumwebdriverremotewebdriver.py", line 333, in get
    self.execute(Command.GET, {'url': url})
  File "C:UsersSTEAppDataLocalPackagesPythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0LocalCachelocal-packagesPython38site-packagesseleniumwebdriverremotewebdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "C:UsersSTEAppDataLocalPackagesPythonSoftwareFoundation.Python.3.8_qbz5n2kfra8p0LocalCachelocal-packagesPython38site-packagesseleniumwebdriverremoteerrorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: unknown error: net::ERR_NAME_NOT_RESOLVED
  (Session info: chrome=87.0.4280.88)
 

Я просмотрел предыдущие вопросы и, похоже, не могу найти решение этой проблемы.

Любая помощь была бы очень признательна 🙂

Ответ №1:

Если вы хотите перехватить ошибку, вам нужно изменить except ее на то, что selenium создает для вас. В этом случае: selenium.common.exceptions.WebDriverException .

Итак, сначала импортируйте его:

 from selenium.common.exceptions import WebDriverException
 

Затем вы можете поймать:

 try:
    driver.get('http://www.whitefoxcatering.co.uk')
except WebDriverException:
    print("page down")