如何使用beautifulsoup找到示例 context 的值?
这是我在Python中打印Beautiful var时获得的一些内容。
<script>
(function (root) {
root['__playIT'] = {"context":{"dispatcher":{"stores"}
}(this));
</script>
答案 0 :(得分:0)
使用BeautifulSoup
,您只能找到所需的script
元素。然后,要提取实际的context
值,您可以使用例如正则表达式:
import re
from bs4 import BeautifulSoup
data = """
<script>
(function (root) {
root['__playIT'] = {"context":{"dispatcher":{"stores"}
}(this));
</script>"""
soup = BeautifulSoup(data, "html.parser")
pattern = re.compile(r'"context":(\{.*?)$', re.MULTILINE | re.DOTALL)
script = soup.find("script", text=pattern)
result = pattern.search(script.text).group(1)
print(result)
打印:
{"dispatcher":{"stores"}
请注意,如果该值是有效的JSON字符串,则可以使用json.loads()
加载它。