Python 解析HTML源代码中的JavaScript代码
如何使用Python解析HTML源代码中的JavaScript代码,例如,我想提取productList对象 以下是我的资料来源Python 解析HTML源代码中的JavaScript代码,python,Python,如何使用Python解析HTML源代码中的JavaScript代码,例如,我想提取productList对象 以下是我的资料来源 <html> <body> <div id="content-wrapper" class="row-fluid clearfix" role="contentinfo"> <!-- html content --> </div> <script> var productList
<html>
<body>
<div id="content-wrapper" class="row-fluid clearfix" role="contentinfo">
<!-- html content -->
</div>
<script>
var productList = { "daaa" : "ddddd"};
</script>
</body>
</html>
var productList={“daaa”:“ddddd”};
我认为您需要添加该功能,以便计算机可以读取javascript和python,
使用以下命令:
script type="text/javascript"> <!-------or python----></script>
scripttype=“text/javascript”>
我建议您看看BeautifulSoup——它可以帮助您从HTML文件中提取JavaScript代码(但不能解析/运行它):
source=“”…”“
从bs4导入BeautifulSoup
汤=美汤(来源)
js_code=soup.find_all(“脚本”)[0]。文本
然后,您可以使用一些JavaScript解释器来运行代码并获取变量——有一些类似于或。用谷歌搜索一下。这两种方法都有帮助吗?您可能在某个时候遇到的一个问题是
var-productList={daaa:function(){}
是有效的JS,但不是有效的JSON。您好Ben Riley,欢迎来到Stack Overflow!这不是一个完整的答案;请返回并编辑以完全回答问题。您认为使用regexp来解析提取的JavaScript如何?@Parker,我不确定这是否是一个好主意,我自己从未尝试过用regex解析任何编程语言。我想你可以试试。顺便说一句,您可以尝试使用:它允许您创建自己的解析器来解析不同的语言
source = """<html>...</html>"""
from bs4 import BeautifulSoup
soup = BeautifulSoup(source)
js_code = soup.find_all("script")[0].text