intelmq.bots.parsers.shadowserver package — intelmq 3.1.0.alpha1 documentation

# intelmq.bots.parsers.shadowserver package

## Submodules

## intelmq.bots.parsers.shadowserver.config module

## intelmq.bots.parsers.shadowserver.parser module

Copyright (C) 2016 by Bundesamt für Sicherheit in der Informationstechnik Software engineering by Intevation GmbH

This is an “all-in-one” parser for a lot of shadowserver feeds. It depends on the configuration in the file “config.py” which holds information on how to treat certain shadowserverfeeds. It uses the report field extra.file_name to determine which config should apply, so this field is required.

This parser will only work with csv files named like 2019-01-01-scan_http-country-geo.csv.

Optional parameters:
  overwrite: Bool, default False. If True, it keeps the report’s

    feed.name and does not override it with the corresponding feed name.

  feedname: The fixed feed name to use if it should not automatically detected.

intelmq.bots.parsers.shadowserver.parser.BOT

  alias of `intelmq.bots.parsers.shadowserver.parser.ShadowserverParserBot`

class intelmq.bots.parsers.shadowserver.parser.ShadowserverParserBot(bot_id: str, start: bool = False, sighup_event=None, disable_multithreading: Optional[bool] = None)

  Bases: `intelmq.lib.bot.ParserBot`

  Parse all ShadowServer feeds

  feedname = None
  init()
  overwrite = False
  parse(report)

    A generator yielding the single elements of the data.

    Comments, headers etc. can be processed here. Data needed by self.parse_line can be saved in self.tempdata (list).

    Default parser yields stripped lines. Override for your use or use an existing parser, e.g.:

        parse = ParserBot.parse_csv

    You should do that for recovering lines too.

      recover_line = ParserBot.recover_line_csv

  parse_line(row, report)

    A generator which can yield one or more messages contained in line.

    Report has the full message, thus you can access some metadata. Override for your use.

  recover_line(line: str) → str

    Converts dictionaries to csv. self.csv_fieldnames must be list of fields.

## Module contents