【问题标题】:Get dynamic html table using selenium & parse it using beautifulsoup使用 selenium 获取动态 html 表并使用 beautifulsoup 解析它
【发布时间】:2012-07-27 05:32:50
【问题描述】:
我正在尝试获取由网页中的 JavaScript 动态生成的 HTML 表格的内容,并使用 BeautifulSoup 对其进行解析以使用表格中的某些值。
由于内容是由 JavaScript 生成的,因此在源代码中不可用 (driver.page_source)。
有没有其他方法可以获取内容并使用它?它是包含任务列表的表格,我需要解析表格并确定我正在搜索的特定任务是否可用。
【问题讨论】:
标签:
python
regex
selenium
webdriver
beautifulsoup
【解决方案1】:
正如 Julian 所提到的,我宁愿在 Firebug(或其他浏览器中的类似工具)中检查我的“网络”选项卡并获取这样的数据。如果数据是 JSON,只需使用json.loads(),如果是 html,您可以使用 BS 或您所说的任何其他 lib 解析它。也许你想试试我的dummy lib,它简化了这一点并将表格作为 tablib 对象返回,你可以得到 csv、excel、json 等格式。
【解决方案2】:
您需要弄清楚 Javascript 发出的 HTTP 请求是什么,并在您的 Python 代码中发出相同的请求。您可以使用您最喜欢的浏览器的开发工具或使用wireshark(如果强制)来做到这一点。