#!/usr/bin/env python # -*- coding: utf-8 -*- from .abstractgenerator import AbstractMISPObjectGenerator import logging from pyfaup.faup import Faup # type: ignore from urllib.parse import unquote_plus logger = logging.getLogger('pymisp') faup = Faup() class URLObject(AbstractMISPObjectGenerator): def __init__(self, url: str, **kwargs): super().__init__('url', **kwargs) faup.decode(unquote_plus(url)) self.generate_attributes() def generate_attributes(self): self.add_attribute('url', value=faup.url.decode()) if faup.get_host(): self.add_attribute('host', value=faup.get_host()) if faup.get_domain(): self.add_attribute('domain', value=faup.get_domain())