Не могу узнать количество подписчиков на ютуб с помощью питон
Пытаюсь написать парсер который узнает количество подписчиков питон. Постоянно выдает ошибку ValueError: substring not found
import requests
def get_cont(html):
findStr = '"subscriberCountText":{"runs":[{"text":"'
р = html.index(findStr) + len(findStr)
count = ''
while html[р] != '"':
count += html[p]
р += 1
return count
def parserus(channel):
html = requests.get('https://www.youtube.com/' + channel)
if html.status_code == 200:
return get_cont(html.text)
else:
print("Ошибочка вышла")
print(parserus('@shuravi'))
Хотел просто выводить количество подписчиков, пробовал смотреть разные туториалы но ничего не помогло. Если есть возможность, то очень прошу актуальные туториалы, своими силами ничего дельного не нашел P.S Заранее извиняюсь за оформление, мой первый вопрос ещё и пишу поздно ночью.
Ответы (1 шт):
Сообщение об ошибке
"substring not found"
указывает на то, что строка "subscriberCountText":{"runs":[{"text":"' отсутствует в исходном коде HTML, который вы пытаетесь проанализировать. Это означает, что структура веб-сайта изменилась, и скрипт больше не может найти количество подписчиков в исходном HTML-коде.
Возможно, веб-сайт изменил свою структуру или конкретный элемент, который вы пытаетесь найти, больше не присутствует. Также возможно, что веб-сайт блокирует ваши запросы, потому что считает их парсингом.
Чтобы решить эту проблему, вам нужно найти новое расположение счетчика подписчиков в исходном коде HTML и соответствующим образом обновить свой скрипт. Вы можете использовать инструменты разработчика своего браузера, чтобы проверить исходный HTML-код веб-сайта и найти новое местоположение счетчика подписчиков.