【发布时间】:2020-07-14 06:50:20
【问题描述】:
我正在尝试抓取此链接的数据:page。
如果您点击向上箭头,您会注意到月份部分中突出显示的日期。单击突出显示的日期,将出现一个包含该天已启动投标的表格。我需要做的就是获取日历中每个突出显示日期的每个表中的数据。每天可能有一个或多个投标(最多 7 个)。
我已经用 bs4 进行了一些网络抓取,但是我认为这是我不太熟悉的 selenium 的工作(如果我错了,请纠正我)。
到目前为止,我已经设法通过 XPATH 找到箭头元素来浏览日历并显示更多月份。之后,我尝试单击随机的一天(在下面的代码中,我单击了 30.03.2020),在该日期上,一个名为“tenders-table cloned”的 html 对象出现在检查的 html 中。无论您在哪一天点击,对象名称都保持不变。
我现在很困,尝试通过迭代选择和/或打印该对象表中的内容,它要么说 object is not iterable 要么无。
from selenium import webdriver
chrome_path = r"C:\Users\<name>\chromedriver.exe"
driver = webdriver.Chrome(chrome_path)
driver.get("http://www.ibex.bg/bg/данни-за-пазара/централизиран-пазар-за-двустранни-договори/търговски-календар/")
driver.find_element_by_xpath("""//*[@id="content"]/div[3]/div/div[1]/div/i""").click()
driver.find_element_by_xpath("""//*[@id="content"]/div[3]/div/div[2]/div[1]/div[3]/table/tbody/tr[6]/td[1]""").click()
请建议我如何从弹出的表格中提取数据。
【问题讨论】:
标签: html selenium web-scraping beautifulsoup scrape