Я пытаюсь разобрать youtube с красивым супом, но без удачи.
Я проанализировал многие веб-сайты, которые все прошли отлично, но этот не работает и выдает мне эту ошибку:
UnicodeEncodeError: 'charmap' codec can't encode character '\u2117' in position 135588: character maps to <undefined>
Я расшифровал его следующим образом:
page_soup = soup(page_html.decode("utf-8"), "html.parser")
x = page_soup.find('div',{'id':"dismissable"})
Я все еще получаю ошибку выше.
но когда я попробую это:
Код:
page_soup = soup(page_html, "html.parser").encode("utf-8")
с кодировкой я могу распечатать мою веб-страницу, но при поиске в ней следующим образом:
search_list = page_soup.find_all('div',{'class':"style-scope ytd-video-renderer"})
print(len(search_list))
Я получаю следующую ошибку:
TypeError: slice indices must be integers or None or have an __index__ method
Любой совет будет приветствоваться.
большое спасибо.
дополнительно мой код:
import urllib3
from bs4 import BeautifulSoup as soup
from urllib.request import urlopen
import requests
http = urllib3.PoolManager()
set_Link = set([''])
url = 'https://www.youtube.com/results?search_query=the+lumineers+sleep+on+the+floor'
r = http.request('get',url)
page_html = r.data #html data opslaan in variabele
page_soup = soup(page_html, "html.parser").encode("utf-8")
print(page_soup)
search_list = page_soup.find_all('div',{'class':"style-scope ytd-video-renderer"})
print(len(search_list))