@ProgrammDevel

Как спарсить данные с TrandingView?

Хочу спарсить новости с TrandingView - https://ru.tradingview.com/symbols/MOEX-DSKY/news/

Но при таком парсинге:
url = 'https://ru.tradingview.com/markets/stocks-russia/news/'
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')

Выходит вместо нужного текст - пустота

На самом сайте не получается просто скопировать новость, возможно из-за этого данные не парсятся.
Есть ли возможность спарсить данные с этого сайта?
  • Вопрос задан
  • 270 просмотров
Решения вопроса 1
Mike_Ro
@Mike_Ro Куратор тега Python
Python, JS, WordPress, SEO, Bots, Adversting
Никак. При использование requests.get(url) - Вы получаете мгновенно тот html, который сервер отдал при первом запросе, без возможности чего либо дождаться. А сайт из примера - построен на React-е, т.е. динамический.

Для работы с динамикой - используйте Selenium.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@rPman
Данные там лежат в огромном json прямо встроенном в саму страницу, которая грузится без каких либо особенностей, тупо wget-ом, очень странное решение но
<script type="application/prs.init-data+json">{"FYBZHq":{"context":{"request_context":{"user":{"is_authenticated":true,"is_...}}</script>
пример FYBZHq►data►news►data►items►0►
id	:	prime:0273264f867b8:0
title	:	Результаты торгов акциями в секторе основных торгов Московской биржи
storyPath	:	/news/prime:0273264f867b8:0/
sourceLogoId	:	prime
published	:	1701792002
source	:	ПРАЙМ
urgency	:	2
permission	:	headline
provider	:	prime
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы