Как я могу получить таблицу с динамическими данными из URL, используя Selenium и xpath, или другой альтернативой?

1

Я пытаюсь получить основные данные таблицы "Состояние сети" с этого сайта:

http://dev.cryptolions.io/mainnet/

Я попробовал много комбинаций функций селена, заполненных селектором Chrome, и скопировал Xpath, но мне не повезло. Сайт открывается селеном, но я все равно получаю ошибки, подобные этому. Что мне здесь не хватает?

Получение таблицы в любом количестве структур данных было бы в порядке. Но словарь, JSON, или что-то, что я могу загрузить в pandas df, было бы идеальным.

NoSuchElementException: Message: no такой элемент: невозможно найти элемент: {"method": "xpath", "selector": "//* [@id =" bpTableSystem "]"}
(Информация о сессии: chrome = 67.0.3396.87) (Информация о драйвере: chromedriver = 2.40.565498 (ea082db3280dd6843ebfb08a625e3eb905c4f5ab), платформа = Windows NT 10.0.17134 x86_64)

Мой код:

driver = webdriver.Chrome(r'C:\chromedriver_win32\chromedriver.exe') 
browser = webdriver.Chrome()

browser.get('http://dev.cryptolions.io/mainnet/')

time.sleep(30)
content = driver.find_element_by_xpath('//*[@id="bpTableSystem"]')
print content.text
Теги:
xpath
selenium
selenium-webdriver

1 ответ

1
Лучший ответ

Проблема в том, что вы определили два экземпляра Chrome: browser и driver. Вы ориентируетесь на целевую страницу с browser, пытаясь найти table с driver.

Просто замените

browser.get('http://dev.cryptolions.io/mainnet/') 

с

driver.get('http://dev.cryptolions.io/mainnet/')
  • 0
    Ваш комментарий решил мою проблему мгновенно. Большое спасибо!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню