From 3cae13e76f287e4274a3cb4ecb70ea4c8b827a07 Mon Sep 17 00:00:00 2001 From: ricterz Date: Wed, 18 Dec 2024 23:37:00 +0800 Subject: [PATCH] fix #363 --- nhentai/doujinshi.py | 2 +- nhentai/downloader.py | 1 - nhentai/utils.py | 19 ++++++++++--------- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/nhentai/doujinshi.py b/nhentai/doujinshi.py index 7d9bd2f..578ec25 100644 --- a/nhentai/doujinshi.py +++ b/nhentai/doujinshi.py @@ -57,7 +57,7 @@ class Doujinshi(object): self.table = [ ['Parodies', self.info.parodies], - ['Doujinshi', self.name], + ['Title', self.name], ['Subtitle', self.info.subtitle], ['Date', self.info.date], ['Characters', self.info.characters], diff --git a/nhentai/downloader.py b/nhentai/downloader.py index e127bb3..e4dac6d 100644 --- a/nhentai/downloader.py +++ b/nhentai/downloader.py @@ -4,7 +4,6 @@ import os import asyncio import httpx import urllib3.exceptions -import math from urllib.parse import urlparse from nhentai import constant diff --git a/nhentai/utils.py b/nhentai/utils.py index 0cdaf39..fac5c65 100644 --- a/nhentai/utils.py +++ b/nhentai/utils.py @@ -5,13 +5,13 @@ import re import os import zipfile import shutil -import copy import httpx import requests import sqlite3 import urllib.parse -from typing import Optional, Tuple +from typing import Tuple +from requests.structures import CaseInsensitiveDict from nhentai import constant from nhentai.logger import logger @@ -335,14 +335,15 @@ def generate_metadata_file(output_dir, doujinshi_obj): 'TRANSLATOR', 'PUBLISHER', 'DESCRIPTION', 'STATUS', 'CHAPTERS', 'PAGES', 'TAGS', 'TYPE', 'LANGUAGE', 'RELEASED', 'READING DIRECTION', 'CHARACTERS', 'SERIES', 'PARODY', 'URL'] - special_fields = ['PARODY', 'TITLE', 'ORIGINAL TITLE', 'DATE', 'CHARACTERS', 'AUTHOR', 'GROUPS', - 'LANGUAGE', 'TAGS', 'URL', 'PAGES'] - for i in range(len(fields)): - f.write(f'{fields[i]}: ') - if fields[i] in special_fields: - f.write(str(doujinshi_obj.table[special_fields.index(fields[i])][1])) - f.write('\n') + temp_dict = CaseInsensitiveDict(dict(doujinshi_obj.table)) + print(doujinshi_obj.info) + for i in fields: + v = temp_dict.get(i) + v = temp_dict.get(f'{i}s') if v is None else v + v = doujinshi_obj.info.get(i.lower(), None) if v is None else v + v = doujinshi_obj.info.get(f'{i.lower()}s', "Unknown") if v is None else v + f.write(f'{i}: {v}\n') f.close() logger.log(16, f'Metadata Info has been written to "{info_txt_path}"')