Как все еще получить вывод, если веб-сайт не существует.(как обработать ошибку 404) - PullRequest
0 голосов
/ 07 июня 2018

Вот код:

quote_page =  "https://en.wikipedia.org/wiki/" + Awi
page = urllib2.urlopen(quote_page)
soup = BeautifulSoup(page, 'html.parser')
wiki_box = soup.find('div', attrs={'class':'mw-parser-output'})
wikip = wiki_box.find('p')
wiki = wikip.text.strip()
print wiki

Awi - ключевое слово для вики-сайта.Но что, если сайт не существует.Может кто-нибудь, пожалуйста, помогите?

Ответы [ 2 ]

0 голосов
/ 07 июня 2018

Вам необходимо получить код состояния запроса и посмотреть, соответствует ли он HTTP-коду 200

quote_page =  "https://en.wikipedia.org/wiki/" + Awi
page = urllib2.urlopen(quote_page)
if page.getcode() == 200:
    soup = BeautifulSoup(page, 'html.parser')
    wiki_box = soup.find('div', attrs={'class':'mw-parser-output'})
    wikip = wiki_box.find('p')
    wiki = wikip.text.strip()
    print(wiki)
else:
    print("Page could not be loaded")
0 голосов
/ 07 июня 2018

использовать попробуйте и за исключением

import urllib2
try:
    urllib2.urlopen(quote_page)
except urllib2.HTTPError as e:
    print(e.code)
except urllib2.URLError as e:
    print(e.args)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...