我正在尝试从网页中抓取javascript变量的内容。该网页是一个搜索页面,当您查看其来源时,该页面上的内容类似于
<script>var test1='balah';var catalog={};var test2='blah'</script>
catalog
是一个很大的嵌套json结构字符串。
我知道如何解析它,但是假设我已经在单个字符串变量中包含了整页的html内容,那么如何从网页中获取json字符串?
答案 0 :(得分:1)
如何使用正则表达式?
# -*- coding: utf-8 -*-
import re
content = "<script>var test1='balah';var catalog={'Year':'2019'};var test2='blah'</script>"
p = re.compile(r'[\d\D]+catalog=([\d\D]+?);')
m = p.match(content)
if m:
result = m.group(1)
print result
结果将为{'Year':'2019'}