【问题标题】:I can't extract time with Beautiful Soup ...why?我无法用 Beautiful Soup 提取时间……为什么?
【发布时间】:2016-05-25 21:07:21
【问题描述】:

This is the HTML code

我需要提取日期和时间,但是当我这样做时:

html = BeautifulSoup(htmlText, "html.parser")

contenido = html.find('span', {'id': 'hora'}).getText()

print(contenido)

在输出中不显示任何内容,但没有“getText()”,输出为 <span id="hora"></span> 没有时间。我能做些什么?我正在用 Python 编写代码。

【问题讨论】:

  • 您可以在问题中编辑您的代码。

标签: python beautifulsoup screen-scraping


【解决方案1】:

最有可能的时间是用 JS 插入的。尝试加载整个页面并使用解释器搜索此字符串。如果及时这条线不会 - 那么我是对的。通常,浏览器和脚本对页面的看法不同。如果是这样,您可以尝试 Ctrl + Chift + U 并在选项卡网络中查找时间。如果不存在,则在页面上查找脚本。

查看网络 -> XHR。如果这还没有请求时间,则需要使用 Selenium 来解析这个时间。解析器不支持脚本内部的处理。

【讨论】:

  • 是的,时间是用JS插入的。那么,如果是用 JS 插入的,如何提取呢?
  • 查看网络 -> XHR。如果这还没有请求时间,则需要使用 Selenium 来解析这个时间。解析器不支持脚本内部的处理。
  • 我肯定需要使用 Selenium,因为 XHR 什么也没显示。我怎么能用硒做到这一点?这是 HTML 代码:
  • Slenium 使用您的浏览器进行解析,JS 在浏览器中工作。阅读 Selenium 文档。 selenium-python.readthedocs.org
【解决方案2】:

它与硒一起工作!谢谢杰拉佐!

hora = driver.find_element_by_class_name("segundaLinea").text

现在我可以得到时间了! :)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-29
    • 2011-11-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-11-14
    • 2021-12-12
    • 2015-09-18
    相关资源
    最近更新 更多