Javascript 如何使用Python从网站获取嵌入JSON数据?
我有一个收集能源数据的设备,上面有一个网络接口,可惜没有API window.dataJSON中存储了一个JSON 我可以通过:Javascript 如何使用Python从网站获取嵌入JSON数据?,javascript,python,html,Javascript,Python,Html,我有一个收集能源数据的设备,上面有一个网络接口,可惜没有API window.dataJSON中存储了一个JSON 我可以通过:console.log(JSON.stringify(window.dataJSON))通过Chrome调试器 但我的问题是:如何使用python获取这些数据? 我知道我可以通过以下方式获取页面的源代码: import urllib2 response = urllib2.urlopen("10.10.10.10") page_source = response.re
console.log(JSON.stringify(window.dataJSON))代码>通过Chrome调试器
但我的问题是:如何使用python获取这些数据?
我知道我可以通过以下方式获取页面的源代码:
import urllib2
response = urllib2.urlopen("10.10.10.10")
page_source = response.read()
但是如何读取存储在window.dataJSON中的JSON
提前谢谢你 窗口
对象仅存在于浏览器中。所以,要获得窗口的属性,您应该使用浏览器来完成
您可以使用:
如果不想显示浏览器,您可以将webdriver
更改为使用Headless-Chrome
或PhatomJS
如果将dataJSON
异步分配给window
,您可能需要告诉driver
等待。谢谢您的回答!我可以在没有窗口和浏览器的情况下获取dataJSON吗?你的解决方案似乎有点黑客。你可以看看源代码,看看dataJSON
是如何加载的,也许你可以找到一个url
,你可以直接获取数据,或者它只是在源代码中。遗憾的是,没有。但我认为你的解决方案已经足够好了。这只是为了一个项目。
from selenium import webdriver
driver = webdriver.Chrome()
driver.get('http://www.example.com')
result = driver.execute_script('return JSON.stringify(window.dataJSON)')