You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python使用haralyzer库循环解析HAR文件报AttributeError如何解决

错误原因

报错AttributeError: 'int' object has no attribute 'loads'的核心原因是:你当前代码运行环境中,json这个名称已经不是Python标准库的json模块了,被你在其他位置(大概率是循环代码之前的代码/交互式环境之前运行的代码段)赋值为了整数类型,此时调用json.loads本质是尝试对整数调用loads方法,自然抛出属性不存在的错误。
你提到不使用循环时代码正常,是因为无循环代码运行时你还没有覆盖json的模块指向,后续操作重写了json变量才导致循环运行时报错。

解决方案
  • 排查所有代码中对json变量的赋值操作,修改占用json名称的变量名,不要用已导入的模块名作为自定义变量名。
  • 如果你使用的是Jupyter等交互式运行环境,直接重启内核,先执行正确的导入语句,再运行你的代码即可。
  • 优化你的循环写法,避免索引遍历可能带来的越界问题,同时增加编码声明防止跨系统读文件异常,参考代码如下:
# 先确认正确导入依赖,不要覆盖json名称
import json
from haralyzer import HarParser

sites=['altervista.org', 'amazon.it', 'ansa.it']
for site in sites:
    y = f"{site}.har"
    # 指定utf-8编码读取,避免不同系统默认编码不一致导致的乱码问题
    with open(y, 'r', encoding='utf-8') as f:
        har_parser = HarParser(json.loads(f.read()))
    data = har_parser.har_data
    # 后续对data的处理逻辑写在此处即可

内容的提问来源于stack exchange,提问作者Mahsa Abdolrezaei

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.29 21:24:06