Использование Selenium и BeautifulSoup Specific не возвращает таблицу, предоставляя идентификатор таблицы Python3.7 (возвращает пустой массив)

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

from bs4 import BeautifulSoup
from selenium import webdriver
import time

driver = webdriver.Chrome()
url = 'https://de.sharkscope.com/#Find-Tournament/networks/PokerStars/tournaments/2412466083'
driver.get(url)
res = driver.execute_script("return document.documentElement.outerHTML")
time.sleep(5)
driver.quit()

soup = BeautifulSoup(res, 'lxml')
targetTable = soup.findAll('table', {'id': 'tournamentgrid-1538318460041'})
print(targetTable)

таблица снимков экрана с идентификатором и результатом DisplayResult

Платформа и инструменты

  • Microsoft Windows 10 x64
  • Использование Chromium Webdriver (установленная версия 32bit)

Ред. Я уже пробовал

table = driver.get_element_by_id('tournamentgrid-1538318460041')

&

table = driver.get_element_by_xpath('//*[@id="tournamentgrid-1538398792982"]')

1 ответ

Вы можете попробовать получить доступ к таблице, используя ее xpath

driver.find_element_by_xpath('xpath_here')

или же вы можете получить все строки таблицы (все <tr> элементы объекта)

driver.find_elements_by_xpath('xpath_here') 

и просмотрите список элементов строки, чтобы извлечь необходимые данные, например, используя .text чтобы извлечь текст, посетите https://selenium-python.readthedocs.io/api.html для получения более подробной информации.

Другие вопросы по тегам