这是一个python文件,它读取json数据,但它显示了一些错误。
这就是代码:
import json
import sys
import traceback
with open(str(sys.argv[1]), 'r') as data_file:
data = json.load(data_file)
org_name = str(sys.argv[1]).split('.json', 1)[0]
if data[0]['status'] == 'ERROR' :
print "sslscan finished with errors"
sys.exit(-1)
答案 0 :(得分:1)
错误的含义是您的列表索引超出范围 - 您试图引用一些不存在的索引。
尝试调试代码:将每个操作的输出打印到控制台。我认为错误发生在以下行:
with open(str(sys.argv[1]), 'r') as data_file:
可能你没有传递任何cmd参数,因此sys.argv的长度为1 - > sys.argv [1]超出范围。
对你有意义吗?是的,请编辑你的问题,这太不清楚了。我们需要有关错误回溯的更多信息。
修改强> 可能你应该使用sys.argv [0]而不是sys.argv [1] - 列表由基于零的整数索引。因此,如果您想传递脚本的名称,请使用index [0]。