我将我的网络数据保存在一个har文件中。现在,我希望提取包含特定单词的整个内容字典作为指示符,以便将该字典保存到一个数组中。在har文件中有多个包含该值的类似dict,我想创建一个包含所有响应的数组。
我对python(和一般的编码)还是个新手,像这样的解释会对我有很大帮助。
发布于 2020-06-11 02:13:15
您可以使用haralyzer
模块。您可以使用pip
轻松安装它,如下所示:
pip install haralyzer
以下代码使用此示例har file
>>> import json
>>> from haralyzer import HarParser, HarPage
>>>
>>> with open('sample.har', 'r') as f:
... har_parser = HarParser(json.loads(f.read()))
>>>
>>> data = har_parser.har_data
>>> type(data)
<class 'dict'>
>>>
>>> data.keys()
dict_keys(['version', 'creator', 'pages', 'entries'])
>>>
>>> har_parser.har_data["pages"]
[{'startedDateTime': '2013-08-24T20:16:16.997Z', 'id': 'page_1', 'title': 'http://ericduran.github.io/chromeHAR/', 'pageTimings': {'onContentLoad': 317, 'onLoad': 406}}]
有关更多信息,请查看official GitHub repository。
发布于 2020-09-06 00:32:35
根据Anwarvic的回答,HAR文件中具有基于文本的内容类型的条目包含密钥entry -> response -> content -> text
中的实际内容。因此,这里有一个打印所有此类条目的内容的示例。
.... initialize har parser as per documentation ....
for page in har_parser.pages:
for entry in page.entries:
# Need to be careful accessing the text property, it will not exist for non text-based responses.
print(entry['response']['content'].get('text', ''))
在那里,您可以使用in
或正则表达式来查看条目的响应文本是否与您正在查找的文本匹配。
https://stackoverflow.com/questions/62310007
复制相似问题