From 954b33b2a63e1ef39f74d89a35bbf9ed6dd2fc78 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Geoffrey=20=E2=80=9CFrogeye=E2=80=9D=20Preud=27homme?= Date: Sun, 15 Dec 2019 16:38:01 +0100 Subject: [PATCH] Slightly better Rapid7 parser --- feed_dns.py | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/feed_dns.py b/feed_dns.py index 3acad9a..5adf770 100755 --- a/feed_dns.py +++ b/feed_dns.py @@ -2,7 +2,6 @@ import argparse import database -import json import logging import sys import typing @@ -66,12 +65,16 @@ class Rapid7Parser(Parser): } def consume(self) -> None: + data = dict() for line in self.buf: self.db.enter_step('parse_rapid7') - try: - data = json.loads(line) - except json.decoder.JSONDecodeError: - continue + split = line.split('"') + + for k in range(1, 14, 4): + key = split[k] + val = split[k+2] + data[key] = val + self.register( Rapid7Parser.TYPES[data['type']], int(data['timestamp']),