From 7f8949271fc434b76f884c5175a0860ee3485149 Mon Sep 17 00:00:00 2001 From: sclement Date: Mon, 30 Oct 2023 15:35:26 +0100 Subject: [PATCH] Fix single image download --- main.py | 10 +++++++--- pixiv.py | 19 +++++++++++++------ 2 files changed, 20 insertions(+), 9 deletions(-) diff --git a/main.py b/main.py index ff49c21..4d31514 100644 --- a/main.py +++ b/main.py @@ -40,7 +40,7 @@ async def on_message(message: discord.Message): ) is not None: with TemporaryDirectory() as tmp_dir: async with message.channel.typing(): - pixiv.dowload_pixiv_images( + title = pixiv.dowload_pixiv_images( int(match.group("id")), tmp_dir, REFRESH_TOKEN ) files = os.listdir(tmp_dir) @@ -62,7 +62,7 @@ async def on_message(message: discord.Message): splited_embed = to_send_embed[:4] to_send_embed = to_send_embed[4:] for embed in splited_embed: - embed.title = f"Part {i}/{parts}" + embed.title = f"{title} - Part {i}/{parts}" if i == 1: await message.reply( files=splited_file, embeds=splited_embed @@ -74,10 +74,14 @@ async def on_message(message: discord.Message): i = i + 1 for embed in to_send_embed: - embed.title = f"Part {i}/{parts}" + embed.title = f"{title} - Part {i}/{parts}" await message.channel.send( files=to_send_files, embeds=to_send_embed ) + else: + for embed in to_send_embed: + embed.title = title + await message.reply(files=to_send_files, embeds=to_send_embed) client.run(DISCORD_TOKEN) diff --git a/pixiv.py b/pixiv.py index a36129a..2bfe2bd 100644 --- a/pixiv.py +++ b/pixiv.py @@ -12,9 +12,16 @@ def dowload_pixiv_images( json_result = api.illust_detail(illust_id) illust = json_result.illust pages = illust["meta_pages"] - print(f"Dowloading image to {dest_folder}") - for page in pages: - url = page["image_urls"]["original"] - print(url) - api.download(url=url, path=dest_folder) - print("Dowload finished !") + if len(pages) > 0: + print(f"Dowloading mutiple images to {dest_folder}") + for page in pages: + url = page["image_urls"]["original"] + print(url) + api.download(url=url, path=dest_folder) + else: + print(f"Dowloading single image to {dest_folder}") + api.download( + url=illust["meta_single_page"]["original_image_url"], path=dest_folder + ) + print("Down4load finished !") + return illust["title"]