def __init__(self, data) -> None:
        StatsAppend(erina.erinaParsingCount, "SauceNAO")
        # Normalize to get the same type of data everytime
        if isinstance(data, list):
            "\n".join(data)
        else:
            data = str(data)

        self.data = data.split("\n")

        self.similarity = None
        self.database = None
        self.title = None
        self.link = None
        self.author = None
        self.thumbnail = None
        self.is_manga = None
        self.is_anime = None
        self.part = None
        self.year = None
        self.timing = None
        self.cache_timestamp = None

        for element in self.data:
            element = str(element).replace("\n", "")

            if element[:11] == 'Similarity:':
                self.similarity = utils.convert_to_float(element[12:])
            elif element[:9] == 'Index ID:':
                self.database = self.Index(element[10:])
            elif element[:6] == 'Title:':
                self.title = self.AnimeTitle(native_title=element[7:])
            elif element[:4] == 'URL:':
                self.link = str(element[5:])
            elif element[:7] == 'Author:':
                self.author = str(element[8:])
            elif element[:10] == 'Thumbnail:':
                self.thumbnail = str(element[11:])
            elif element[:8] == 'isManga:':
                self.is_manga = utils.convert_to_boolean(element[9:])
            elif element[:5] == 'Part:':
                self.part = utils.convert_to_int(element[6:])
            elif element[:8] == 'isAnime:':
                self.is_anime = utils.convert_to_boolean(element[9:])
            elif element[:
                         8] == 'Episode:':  #### COMPATIBILITY WITH OLD SAUCENAO CACHE
                self.part = utils.convert_to_int(element[9:])
            elif element[:5] == 'Year:':
                self.year = utils.convert_to_int(element[6:])
            elif element[:15] == 'Estimated Time:':
                self.timing = self.Timing(from_time=element[16:],
                                          to=element[16:],
                                          at=element[16:])
            elif element[:16] == 'Cache Timestamp:':
                self.cache_timestamp = self.CacheTimestamp(element[17:])
Esempio n. 2
0
            def addValue(timestamp, data=None):
                """
                Adds a value to the results
                """
                timestamp = timestamp.timestamp()
                if data is None:
                    if timestamp in results[category][subcategory]["values"]:
                        results[category][subcategory]["values"][
                            timestamp] += 1
                    else:
                        results[category][subcategory]["values"][timestamp] = 1

                    if category == "search" and subcategory in [
                            "anilistIDSearchCount", "titleSearchCount",
                            "imageSearchCount"
                    ]:
                        if timestamp in results["search"]["searchCount"][
                                "values"]:
                            results["search"]["searchCount"]["values"][
                                timestamp] += 1
                        else:
                            results["search"]["searchCount"]["values"][
                                timestamp] = 1

                elif subcategory in [
                        "manamiDBTitleVectorLookups", "erinaDatabaseLookups"
                ]:
                    if timestamp in results[category][subcategory]["values"]:
                        results[category][subcategory]["values"][
                            timestamp] += convert_to_int(
                                element.split("    ")[1])
                    else:
                        results[category][subcategory]["values"][
                            timestamp] = convert_to_int(
                                element.split("    ")[1])
                elif subcategory == "cacheFilesCount":
                    results[category][subcategory]["values"][
                        timestamp] = convert_to_int(element.split("    ")[1])
                elif subcategory == "responsePolarity":
                    if timestamp in results[category][subcategory]["values"]:
                        results[category][subcategory]["values"][
                            timestamp].append(
                                convert_to_float(element.split("    ")[1]))
                    else:
                        results[category][subcategory]["values"][timestamp] = [
                            convert_to_float(element.split("    ")[1])
                        ]
 def __init__(self, index) -> None:
     self.id = utils.convert_to_int(index)
     try:
         self.name = str(index_id_to_name[self.id])
     except:
         self.name = None