Я пытаюсь извлечь из Интернета некоторые части этой страницы: https://markets.businessinsider.com/stocks/bp-stock с помощью BeautifulSoup для поиска некоторого текста, содержащегося в заголовке таблицы h2
когда я делаю:
data_table = soup.find('h2', text=re.compile('RELATED STOCKS')).find_parent('div').find('table')
Он правильно получает таблицу, которую я ищу.
Когда я пытаюсь получить таблицу Analyst Opinion, используя аналогичную строку, она возвращает None:
data_table = soup.find('h2', text=re.compile('ANALYST OPINIONS')).find_parent('div').find('table')
Я предполагаю, что в html-коде могут быть какие-то специальные символы, которые позволяют re функционировать должным образом. Я тоже пробовал это:
data_table = soup.find('h2', text=re.compile('.*?STOCK.*?INFORMATION.*?', re.DOTALL))
безуспешно.
Я хотел бы получить таблицу, содержащую этот фрагмент текста Мнение аналитика, не находя все таблицы, но проверяя, содержит ли запрошенный мной текст.
Любая идея будет высоко оценена. Лучший