我正在尝试使用 BeautifulSoup 从 HTML 源代码中获取 JavaScript var 值。
例如我有:
<script>
[other code]
var my = 'hello';
var name = 'hi';
var is = 'halo';
[other code]
</script>
我想要返回 Python 中 var“my”的值
我怎样才能实现这一目标?
最佳答案
最简单的方法是使用正则表达式模式通过BeautifulSoup
定位元素并提取所需的子字符串:
import re
from bs4 import BeautifulSoup
data = """
<script>
[other code]
var my = 'hello';
var name = 'hi';
var is = 'halo';
[other code]
</script>
"""
soup = BeautifulSoup(data, "html.parser")
pattern = re.compile(r"var my = '(.*?)';$", re.MULTILINE | re.DOTALL)
script = soup.find("script", text=pattern)
print(pattern.search(script.text).group(1))
打印 hello
。
关于python - 在Python中使用BeautifulSoup获取HTML源中的JS var值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41020606/