Python:抓取一行Javascript代码

Python: scrape a Javascript line

本文关键字:一行 Javascript 代码 抓取 Python      更新时间:2023-09-26

我想在Python中抓取包含JSON数据的Javascript行。例如:

AH4RSearch.listingsJSON = $.parseJSON('{"properties":[{"Price":3695,"PriceFormatted":"3,695","Street":"9251 E Bajada Road"}');

我明白,在我能得到$.parseJSON的内容后,我可以使用json.loads以JSON格式存储它,但我如何从Javascript行获得此内容?

您可能需要re来提取数据

import re
import json
your_js_string = """AH4RSearch.listingsJSON = $.parseJSON('{"properties":[{"Price":3695,"PriceFormatted":"3,695","Street":"9251 E Bajada Road"}');"""
m = re.search(r''$'.parseJSON'(''(.*?)''');', your_js_string)
print json.loads(m.group(1))
# oh, no, your json is broken

对于Python,它只是字符串,所以使用标准的字符串函数-如split()或切片[start:end]

import json
text = '''AH4RSearch.listingsJSON = $.parseJSON('{"properties":[{"Price":3695,"PriceFormatted":"3,695","Street":"9251 E Bajada Road"}]}')'''
data = json.loads(text[39:-2])
print(data['properties'][0]['Price'])