Уведомления

Группа в Telegram: @pythonsu

#1 Июнь 7, 2023 10:27:06

mrvlbt
Зарегистрирован: 2023-06-07
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите решить проблему с парсингом

Здравствуйте! Решил спарсить название видео с ютуба но что-то ничего не получается, прочитал кучу информации и никак не выходит, возможно я мыслю не в правильном русле или что-то важное в коде упускаю?

import requests
from bs4 import BeautifulSoup

url = "https://www.youtube.com/"

response = requests.get(url)
html = response.content

soup = BeautifulSoup(html, "html.parser")

video_links = soup.find_all("video-title", {"class": "style-scope ytd-rich-grid-media"})

for link in video_links:
title = link.get("title")
print(title)

Офлайн

#2 Июнь 7, 2023 11:30:29

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1349
Репутация: +  118  -
Профиль   Отправить e-mail  

Помогите решить проблему с парсингом

mrvlbt
возможно я мыслю не в правильном русле или что-то важное в коде упускаю?

открываешь браузер, нужную страницу, нажимаешь f12 и видишь html страницы.

Потом через requests, получаешь html по этому же url. Далее сравниваешь их, например выводишь print(html),потому что html могут приходить разные, в зависимости от заголовков, которые передаешь с запросом. Т.е браузер у тебя передает одни заголовки, а requests другие, из-за этого html разные. А когда пытаешься найти что-то через beautifulsoup, так можешь в полученном html, открыть строку поиска типа ctrl-f, и поискать теги, есть ли они вообще такие, если есть тогда парсишь, иначе, добиваешься нужного html. Это только один из нюансов

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version