BeautifulSoup - ошибка urlopen [SSL: CERTIFICATE_VERIFY_FAILED] проверка сертификата не удалась - PullRequest
0 голосов
/ 30 августа 2018

Я пытаюсь проанализировать страницу Socialblade, чтобы получить информацию о YouTube, но постоянно получаю следующую ошибку:

"urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:777)>"

Как мне это исправить? Это мой код до сих пор:

def process_socialblade(username):
    socialblade_user_url = 'https://socialblade.com/youtube/user/' + username
    context = ssl._create_unverified_context()
    print('Attempting to parse Socialblade:', socialblade_user_url)
    q = Request(socialblade_user_url)
    q.add_header('User-Agent', 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.11 (KHTML, like Gecko) '
                               'Chrome/23.0.1271.64 Safari/537.11')
    q.add_header('Accept', 'text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8')
    q.add_header('Accept-Charset', 'ISO-8859-1,utf-8;q=0.7,*;q=0.3')
    q.add_header('Accept-Encoding', 'none')
    q.add_header('Accept-Language', 'en-US,en;q=0.8')
    q.add_header('Connection', 'keep-alive')
    socialblade_user_html = urlopen(q, context).read()
    if socialblade_user_html:
        soup = BeautifulSoup(socialblade_user_html, "html.parser")
        youtube_user_top_info_list = soup.findAll('div', attrs={'class': 'YouTubeUserTopInfo'})
        for i in youtube_user_top_info_list:
            print(i.text())
    else:
        print('Could not parse Socialblade', socialblade_user_html)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...