Zeal-L / BiliBili-Manga-Downloader

一个好用的哔哩哔哩漫画下载器,拥有图形界面,支持关键词搜索漫画和二维码登入,黑科技下载未解锁章节,多线程下载,多种保存格式,本地漫画管理,一键检查更新!
GNU Affero General Public License v3.0
868 stars 53 forks source link

🐛修复BiliPlus解析失败问题(使用重定向) #157

Closed lanyeeee closed 3 weeks ago

lanyeeee commented 1 month ago

功能描述

目前BiliPlus漫画页面的html里不再直接包含图片地址,取而代之的是一些query参数,通过这些参数发起的请求会被重定向到真正的图片地址

例如: 某图片的query参数为: ?act=get_image_url&epid=595701&request_time=1721133361&file=bb35c716a7781be297f57f1e39b21dfc0375e773.jpg&append= 因为requests自带重定向功能,带cookie向以下url发送请求 https://www.biliplus.com/manga/?act=get_image_url&epid=595701&request_time=1721133361&file=bb35c716a7781be297f57f1e39b21dfc0375e773.jpg&append= 即可得到图片

这个PR将上述的url直接给到DownloadManager,不带token DownloadManager通过是否有token判断url是否来自BiliPlus 从而分别处理两种下载方式

优劣

优: 使用重定向相当于图片地址解析与下载同时进行,能将下载进度迅速反映在用户界面上 劣: 改动的文件较多,且破坏了DownloadManager.pyEpisode.py的抽象

在我的网络环境中,无论是否使用重定向,下载的总耗时都差不多 解决这个issue #154

lanyeeee commented 1 month ago

没注意要给commit签名,现在好了 @Zeal-L