【发布时间】:2018-11-12 20:25:12
【问题描述】:
我正在尝试从该站点抓取完整的 HTML 表格: https://www.iscc-system.org/certificates/all-certificates/
我的代码如下:
from selenium import webdriver
import time
import pandas as pd
url = 'https://www.iscc-system.org/certificates/all-certificates/'
browser = webdriver.Chrome('/home/giuseppe/bin/chromedriver')
browser.get(url)
csvfile = open('Scrape_certificates', 'a')
dfs = pd.read_html('https://www.iscc-system.org/certificates/all-certificates/', header=0)
for i in range(1,10):
for df in dfs:
df.to_csv(csvfile, header=False)
link_next_page = browser.find_element_by_id('table_1_next')
link_next_page.click()
time.sleep(4)
dfs = pd.read_html(browser.current_url)
csvfile.close()
以上代码仅以全表的前10页为例。 问题是输出总是相同的第一个表重复 10 次,尽管通过单击“下一个表”按钮实际表得到更新(至少如果我看到网页),我无法获得真正的新数据从下表。我总是从第一个表中得到相同的数据。
【问题讨论】:
标签: python-3.x web-scraping html-table beautifulsoup selenium-chromedriver