tabela_site = driver.find_elements(By.CLASS_NAME,"table")
tabela = tabela_site[0].text
Como passar esse resultado que é a tabela para um dataframe ?
df = pd.read_html(tabela)
df
Da o seguinte erro
ValueError: No tables found
这是冠军联赛积分榜的一个简单示例。 您可以使用
driver.find_elements(By.TAG_NAME, "table")
搜索页面上的所有表格。
使用 table.get_attribute("outerHTML")
您可以获得包含表格的特定 html 源。所以你可以用 pandas 输出它:
from selenium import webdriver
from selenium.webdriver.common.by import By
import pandas as pd
pd.set_option('display.width', None)
driver = webdriver.Chrome()
driver.get("https://www.sportschau.de/live-und-ergebnisse/fussball/uefa-champions-league/tabelle/")
tables = driver.find_elements(By.TAG_NAME, "table")
for table in tables:
print(pd.read_html(io.StringIO(table.get_attribute("outerHTML")))[0])
print("")
driver.quit()