Я импортировал файл json с помощью python и все еще читаю первые элементы json мне нужно добавить цикл для чтения всего файла
Содержимое файла JSON
[
{
"severity": 4,
"status": "OPEN",
"id": 1987,
"description": "Multiple Login Failures for the Same User containing Bad Username",
"start_time": 1525269490400
},
{
"severity": 4,
"status": "OPEN",
"id": 1986,
"description": "Multiple Login Failures for the Same User containing Bad Username",
"start_time": 1525269181679
},
.
.
.
.
.
]
и это скрипт python
# Prepare the sample Alert
with open('output.json') as json_data:
data = json.load(json_data,)
if severity=data[0]['severity'] < 4:
severity=1
elif severity=data[0]['severity'] > 6:
severity=3
else:
severity=2
alert = Alert(title=data[0]['description'],
date=data[0]['start_time'],
severity=severity,
description='N/A',
type='Offense',
source='QradarSiem',
sourceRef=data[0]['id'])
я знаю, что мне нужно использовать
for line in f:
data.append(json.loads(line))
но я не знаю, где и как его использовать, вы можете помочь?
в английском букле пишется как «петля».
Пожалуйста, перефразируйте. Ваш вопрос непонятен. Что ты пытаешься сделать? Что такое букле?
i know that i need to use
for line in f: data.append(json.loads(line))"
Зачем тебе это делать ??? Вы уже проанализировали весь файл, у вас есть объект списка, все, что вам нужно сделать, это выполнить итерацию по списку.
with open('output.json') as json_data:
data = json.load(json_data,)
for item in data:
print(item)
С линией
data = json.load(json_data,)
у вас уже есть все данные. Теперь вы можете просто перебирать «данные»:
for item in data:
if item['severity'] == 4:
do_something(item)
Пытаться:
import json
with open("infile.json","r") as infile:
val = infile.read()
json=json.loads(val)
print(json)
Вы можете объяснить, что это значит? Просто предоставления кода недостаточно, чтобы предоставить полный контекст для обоснования вашего ответа.
if severity=data[0]['severity'] < 4
не является допустимым Python.