python 如何获取网页上的script变量。

爬虫获取网页后,想要获取网页中<script></script>下的某个变量的内容。

clipboard.png

比如我想获取页面下,script中的global这个变量下的内容
需要怎么获取呢?

clipboard.png

阅读 18.3k
5 个回答

后来自己直接用正则去匹配,然后最后用json去解。

确定网页源代码中有此内容

编写正则,进行匹配即可,初看一下不是太复杂

1.正则匹配,2.python 配合phantomjs来模拟浏览器内核的访问,继而可以执行js代码

直接使用js2py执行script中代码,执行结束之后python可以访问script中声明的变量名

soup = BeautifulSoup(html, "lxml")
data = soup.find_all('script', type='text/javascript')
script_content = data[0].string
context = js2py.EvalJs()
context.execute(script_content)
print(window.__INITIAL_COMPONENTS_STATE__)
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进