Python 3.x 使用selenium提取WebTable

Python 3.x 使用selenium提取WebTable,python-3.x,selenium-webdriver,web-scraping,html-table,Python 3.x,Selenium Webdriver,Web Scraping,Html Table,我想提取一个包含许多表的特定表。显示所需表格的图片。更改表索引不会使用以下代码显示所需的表。索引可以从0更改为12,但不显示所需的表。帮帮我 按表的唯一id选择表 table = soup.find(id="articlebody") rows = table.tbody.findAll("tr") for row in rows: cells = row.findAll("td") print cells 您需要的

我想提取一个包含许多表的特定表。显示所需表格的图片。更改表索引不会使用以下代码显示所需的表。索引可以从0更改为12,但不显示所需的表。帮帮我


按表的唯一id选择表

table  = soup.find(id="articlebody")
rows = table.tbody.findAll("tr")
for row in rows:
    cells = row.findAll("td")
    print cells

您需要的表是通过JS加载的。我们需要滚动页面来执行js,这样对我来说就可以了:-

driver.get('https://nepsealpha.com/')
driver.execute_script("window.scrollTo(0, 1000);")
sleep(5)
soup=BeautifulSoup(driver.page_source,'html5')

df = pd.read_html(str(soup))
df_required = df[1]

table=soup.find(id=“info-table0”)打印(table)#结果无。我不会得到尼什塔!遍历单元格并如上所述打印亲爱的Nischitha,您能为我测试并粘贴工作代码吗。有很多表,但我想提取的表并不像我想的那样工作。我的require表如此链接所示(也在上面)。亲爱的Prakar,谢谢!!使用panda dataframe与我预期的完全一样。但我想再问一件事,“我能像在其他情况下一样迭代不同的页面吗?”“window.scrollTo(0,1000);”,我们可以在底部看到多个页面1,2,3,…而True:try:link=self.driver.find_element_by_link_text(“下一页”)print(“移动下一页”)link.click()。更改xpath//*[@id=“scoreBoard”]/div/div[2]/div/a[3],///*[@id=“scoreBoard”]/div/div/div[2]/div/a[4],//*[@id=“scoreBoard”]/div/div/div[2]/div/a[5]在web中加载不同的表值,但我们上面的方法总是提取相同的值。我想让表迭代这些xpath更改并在这些页面中组合表。这不是最初的问题。请针对您面临的问题提出一个单独的问题,以及到目前为止您尝试了什么。
driver.get('https://nepsealpha.com/')
driver.execute_script("window.scrollTo(0, 1000);")
sleep(5)
soup=BeautifulSoup(driver.page_source,'html5')

df = pd.read_html(str(soup))
df_required = df[1]