невозможно проанализировать веб-страницу с помощью Python - PullRequest
0 голосов
/ 23 февраля 2019

Я пытаюсь выполнить синтаксический анализ ниже веб-страницы, чтобы получить название акций, которые в данный момент все время достигают максимума или минимума при обмене.

https://www.bseindia.com/markets/equity/EQReports/HighLow.html?Flag=H#

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

1 Ответ

0 голосов
/ 23 февраля 2019

Часть HTML на странице генерируется динамически с помощью JavaScript.Скорее всего, вы используете библиотеку requests, которая не может обрабатывать HTML, сгенерированный таким образом.

Вместо этого вы можете использовать библиотеку Selenium , которая позволяет запускатьэкземпляр веб-браузера, управляемого Python, и получающий оттуда исходный код страницы.

from selenium import webdriver

path = '...' # path to driver here
url = 'https://www.bseindia.com/markets/equity/EQReports/HighLow.html?Flag=H#'

driver = webdriver.Chrome(path)
page_source = driver.get(url).page_source

С помощью синтаксического анализа page_source с помощью BeautifulSoup вы можете получить то, что хотите.

...