【发布时间】:2022-01-25 04:16:04
【问题描述】:
我正在尝试从网站获取 web 数据,我只需要从 tbody 类中获取内部 html 数据并将其转换为 json 以便更好地控制以及稍后将数据保存到文件中。我只能通过使用 selenium 中的 find_element(By.XPATH) 来读取每个元素。有什么方法可以读取整个内部 html tbody 内容然后将其解析为 json?请求将无法工作,因为它位于 iframe 中。
website 和 tbody 是带有标题的滚动表:“Tình hình dịch cả nước”,我只想要表格减去标题,如果可能的话,还要加上表格的标题。
读取元素的代码:
browser=webdriver.Firefox()
browser.get("https://covid19.gov.vn/")
time.sleep(3)
browser.switch_to.frame(browser.find_element(By.XPATH,'/html/body/div[1]/div[2]/div[3]/div/iframe'))
value=browser.find_element(By.XPATH,'/html/body/div[2]/div[1]/div/div[2]/div[1]/span[4]')
print(value.text)
【问题讨论】:
-
stackoverflow.com/questions/38917958/convert-html-into-csv 有一个很好的答案。它使用 BeautifulSoup 从 HTML 中提取数据,这可能是您想要做的。
-
@AmitaIrron 谢谢你的建议。但我确实找到了一个更短的替代方案,我将在我的原始帖子中进行编辑
标签: python web-scraping iframe html-tbody