@Aibot92

Как прописать исключения для перезагрузки старицы?

Всем доброго дня!
Подскажите:
При парсинге иногда страницы перестают отвечать
И код останавливается с такой ошибкой :

raceback (most recent call last):
File "/Users/alexs/Desktop/py/Parsing/parsing_mvi.py", line 60, in get_himl_2
browser.get(url)
File "/Users/alexs/Desktop/py/venv/lib/python3.9/site-packages/selenium/webdriver/remote/webdriver.py", line 333, in get
self.execute(Command.GET, {'url': url})
File "/Users/alexs/Desktop/py/venv/lib/python3.9/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
self.error_handler.check_response(response)
File "/Users/alexs/Desktop/py/venv/lib/python3.9/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.WebDriverException: Message: Reached error page: about:neterror?e=dnsNotFound&u=https%3A//www.mvideo.ru/products/smartfon-honor-30s-128gb-midnight-black-cdy-nx9a-30049880&c=UTF-8&d=%D0%9C%D1%8B%20%D0%BD%D0%B5%20%D0%BC%D0%BE%D0%B6%D0%B5%D0%BC%20%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B8%D1%82%D1%8C%D1%81%D1%8F%20%D0%BA%20%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D1%83%20www.mvideo.ru.


Прописал исключение но толку нет:
def get_himl_2(url):
    driver = (direct+'/geckodriver')
    option = webdriver.FirefoxOptions()
    #option.headless=True
    option.set_preference('permissions.default.stylesheet', 2)
    option.set_preference('permissions.default.image', 2)
    firefox_profile.set_preference('dom.ipc.plugins.enabled.libflashplayer.so', 'false')
    option.set_preference('dom.webdriver.enabled', False)
    browser = webdriver.Firefox(executable_path=driver, options=option)
    while True:
        try:
            browser.get(url)
            time.sleep(1)
            r = browser.page_source

        except browser:
            print('Error')
            browser.refresh()
        else:
            break

    browser.quit()
    return r


Что я делаю не так?
  • Вопрос задан
  • 129 просмотров
Решения вопроса 1
@bodrich
Неправильный указан класс исключения, вместо except browser нужно написать except selenium.common.exceptions.WebDriverException
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы