javascript - 如何从网页将javascript值加载到python中?

标签 javascript python-3.x

当我检查网页上的代码时,我可以看到 html 和 javascript。我使用 Beautiful Soup 来导入和解析 html,但是有很大一部分是用 javascript 编写的,它从可编程逻辑 Controller (PLC) 中提取变量。使用 Beautiful Soup 加载和解析后,我无法在 python 中找到数据 - 这只是 html 代码。

网页直接读取 PLC,我看到实时值在我面前更新,但我无法直接导入它们。屏幕截图是检查窗口中代码的样子。假设我想导入带有属性 class="on" 的变量 id="aout7",我该怎么做?

Inspect View Source of webpage

最佳答案

网页最好在浏览器中运行。有一些用于远程控制浏览器/浏览器引擎的 API,最流行的一个是 Selenium ,并且它具有 Python 绑定(bind):请参阅 https://pypi.org/project/selenium/ - 该页面包含安装说明:

pip install -U selenium

以及一些介绍性示例,例如发出雅虎搜索的代码片段:

from selenium import webdriver
from selenium.webdriver.common.keys import Keys

browser = webdriver.Firefox()

browser.get('http://www.yahoo.com')
assert 'Yahoo' in browser.title

elem = browser.find_element_by_name('p')  # Find the search box
elem.send_keys('seleniumhq' + Keys.RETURN)

browser.quit()

您将需要类似的东西,只需使用 find_element_by_id ( https://selenium-python.readthedocs.io/locating-elements.html ),并使用元素的 text 属性来读取其内容。

关于javascript - 如何从网页将javascript值加载到python中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55130720/

相关文章:

Javascript 代码已更改/主横幅无法正常工作

javascript - jquery中有动态折线图吗?

python - Scrapy 分页在第 2 页后失败

python - 将字符串解压为一个/两个变量

python - 具有复杂结构的数据类实例的完整副本

javascript - 响应式导航栏菜单(汉堡菜单)无法通过单击打开

javascript - 使用按钮和关闭图标关闭 React Semantic UI 模式

javascript - 父级访问功能

python - 使用 CSV 数据对对象进行排序

python - 由于最新的python版本保留了dict的插入顺序,相等(==)的含义会改变吗?