我想使用 Python 从检查元素获取数据。我可以使用 BeautifulSoup 下载源代码,但现在我需要来自网页的检查元素的文本。如果您能建议我如何去做,我将不胜感激。
编辑:
我所说的检查元素是指,在谷歌浏览器中,右键单击为我们提供了一个名为检查元素的选项,该选项具有与该特定页面的每个元素相关的代码。我想提取该代码/仅提取其文本字符串。
如果你想以运行 Javascript 的方式自动从 Python 获取网页,你应该考虑 Selenium。它可以自动驱动网络浏览器(甚至是无头网络浏览器,例如 PhantomJS,因此您不必打开窗口)。
为了获取 HTML,您需要评估一些 javascript。简单的示例代码,进行修改以适应:
from selenium import webdriver
driver = webdriver.PhantomJS()
driver.get("http://google.com")
# This will get the initial html - before javascript
html1 = driver.page_source
# This will get the html after on-load javascript
html2 = driver.execute_script("return document.documentElement.innerHTML;")
注 1:如果您想要一个或多个特定元素,您实际上有几个选择——用 Python 解析 HTML,或者编写更具体的 JavaScript 来返回您想要的内容。
注意 2:如果您确实需要 Chrome 工具中的特定信息而不仅仅是动态生成的 HTML,那么您需要一种方法来挂钩 Chrome 本身。没有办法解决这个问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)