Я пытаюсь заставить мой скрипт получить содержимое из URL-адреса или иным образом зарегистрировать его как ошибку.
Я видел пример в Правильный способ попробовать / кроме использования модуля запросов Python? , но, похоже, он не работает для URL в приведенном ниже коде.
URL не работает, поэтому я ожидаю, что скрипт выполнит блок кроме и зарегистрирует ошибку. Это просто застревает без результатов или ошибки.
import requests import sys url = 'https://m.sportsinteraction.com/fr/football/international/coupe-du-monde-feminine-pari/fifawomen-wc-219-reach-the-semi-finals-scotland-05-21-2019-322-1609228/' try: r = requests.get(url) except requests.exceptions.RequestException as e: print (e) sys.exit(1)
Ниже приведен фрагмент ошибки, которую я получаю:
Эта проблема довольно интересная из-за следующего:
Синтаксически правильный сценарий
URL открывается в определенных местах
Поскольку я использую более старый Chrome, я сначала попробовал решение Python - селеновый веб-драйвер застрял в .get () в цикле , но решение сохранилось.
Следующее решение, которое я тогда попробовал, состояло в том, чтобы установить таймаут для оператора get (), другими словами:
import requests import sys url = 'https://m.sportsinteraction.com/fr/football/international/coupe-du-monde-feminine-pari/fifawomen-wc-219-reach-the-semi-finals-scotland-05-21-2019-322-1609228/' try: r = requests.get(url, timeout = 3) except requests.exceptions.RequestException as e: print (e) sys.exit(1)
Это решение работало, останавливая запрос по истечении указанного времени, прежде чем перейти к блоку исключения.
Если вы работаете удаленно, то:
если локально:
Непохоже на кодовый проплэм