ccloli / E-Hentai-Downloader

Download E-Hentai archive as zip file
GNU General Public License v3.0
1.84k stars 138 forks source link

單一圖片檔案超過5MB無法下載 #187

Open SECOND24 opened 3 years ago

SECOND24 commented 3 years ago

單一圖片檔案超過5MB無法下載 會不斷出現Failed! (Network Error) 重覆連結

g/1212064/25da0a25b7/

ccloli commented 3 years ago

測試沒有遇到異常,請提供瀏覽器、用戶腳本擴展程序名稱及對應版本,或者在腳本運行時按下 F12 並切換到 Console 標籤,然後復制 [EHD] 開頭的日誌至此。

另如果使用的是 Chrome 瀏覽器並配合 Tampermonkey 使用,請確認 Tampermonkey 版本為 4.12,若為 BETA 版則需要 4.12.6124 及以上版本。

SECOND24 commented 3 years ago

本本 g/1883756/79f4844b3f/ Google Chrome 89.0.4389.90 64 位元 Tampermonkey 4.12

userscript.html?name=E-Hentai%20Downloader.user.js&id=8e447151-264d-4e0c-8e16-7fc3e33bb5b6:12807 [EHD] Index > 1 | RealIndex > 1 | Name > 000.jpg | RetryCount > 2 | DownloadedCount > 202 | FetchCount > 1 | FailedCount > 0 failedFetching @ userscript.html?name=E-Hentai%20Downloader.user.js&id=8e447151-264d-4e0c-8e16-7fc3e33bb5b6:12807 userscript.html?name=E-Hentai%20Downloader.user.js&id=8e447151-264d-4e0c-8e16-7fc3e33bb5b6:13429 [EHD] #1: Network Error userscript.html?name=E-Hentai%20Downloader.user.js&id=8e447151-264d-4e0c-8e16-7fc3e33bb5b6:13430 [EHD] #1: RealIndex > 1 | ReadyState > 4 | Status > 0 | StatusText >

這一個檔案出現紅色 不斷重試無法下載
圖片檔案大小為5.5 MB

SECOND24 commented 3 years ago

Google Chrome 已更新至 89.0.4389.114 同樣情況

g/1884630/d1d98db001/ 這本的圖片檔案大小剛好介於3~5.5MB之間 5MB以下 可以載下來 超過5MB就顯示Failed! (Network Error)

ccloli commented 3 years ago

Google Chrome 已更新至 89.0.4389.114 同樣情況

已測試完整下載此 gallery,暫時無法複現。從之前的日誌來看沒有指示 Status,所以大概率是因為網路連接不佳而無法順利下載。

受限於用戶腳本的功能,所以無法實現斷點續傳之功能,因此下載失敗後只能從頭下載。

由於下載原始圖片時是從 E-Hentai 的原始伺服器上下載,而原始伺服器位於歐洲,所以對於東亞用戶可能不是很友好。若您使用代理服務器或 VPN 進行中轉則有可能會好一些。

image

SECOND24 commented 3 years ago

剛才去找VPN 有用英國 美國 但一樣只要一碰到超過5MB的圖檔直接顯示Failed! (Network Error)

螢幕擷取畫面 2021-04-10 201415

因為從這星期開始就這樣 上星期還沒有出現過這問題 之前5MB以上的圖檔可以正常下載

會不會是跟帳號有關?? 譬如不是銅星以上限制圖檔大小下載??

ccloli commented 3 years ago

一般來說帳號不會限制可下載的文件尺寸,所以應該與帳號無關。

可以考慮看看擴展程式的網路請求是否有異常,在 Chrome 的擴展程式欄裏找到 Tampermonkey,右鍵選擇「管理擴展程式」 然後在後面的「查看視圖」(這個翻譯可能有問題,找到對應位置即可)找到 background.html 點擊後會出現一個 DevTools 彈窗,切換到「Network」標籤,然後開始下載 觀察文件名中包含 fullimg.php 以及 *.hath.network(一般在圖片文件名末尾包含 ?dl=1 ) 的請求

若下載出現問題,會在「Status」一欄顯示信息,可以基於此判斷 然後切換到「Console」標籤。一般也會以紅色字體標注請求錯誤的詳細信息。

image

SECOND24 commented 3 years ago

螢幕擷取畫面 2021-04-10 210008

螢幕擷取畫面 2021-04-10 205236

跑出來是這個樣子

ccloli commented 3 years ago

看起來比較迷惑,因為這個錯誤碼似乎是正常的網絡錯誤的請求,不過 http code 指示是 200,也就是至少請求成功收到返回了。

總之至少看起來不像是腳本的問題,所以我這邊可能解決不了,更可能是網路問題或者是電腦有無防火牆中斷了請求。

可以確認下能否直接打開這個出錯的 *.hath.network 的圖片文件?如果能正常下載圖片,那多半是 Tampermonkey 的鍋;如果還是不能,那就只有可能是網絡或者服務器問題了。

SECOND24 commented 3 years ago

直接點網址 網頁會出現"Invalid request" 其他圖片 是可以直接下載的

只有超過5MB都是這個樣子

關掉防毒軟體跟防火牆也一樣

ccloli commented 3 years ago

直接點網址 網頁會出現"Invalid request"

那這多半是服務器問題了,可能某些服務器節點掛了,所以估計沒辦法了。

也可以檢查下是不是有可能影響網絡請求的軟體,嘗試確認更換瀏覽器是否還有該問題。

SECOND24 commented 3 years ago

測試FireFox 87.0 可以正常下載

螢幕擷取畫面 2021-04-10 230320

看來Google Chrome 有問題

持續測試看看

wyjtm commented 3 years ago

本地测试也是超过5mb的图片都无法下载 g/1110519/3bf02582ed/ g/1397507/8a1a850b1b/

这种以前都是可以正常下载的 现在全部报错 Google Chrome 91.0.4472.114(正式版本) (64 位)

ccloli commented 3 years ago

@wyjtm 请提供错误日志,已测试 1110519 的第一张图(6.56MB),下载没有问题

请按下 F12 切换至 Console,然后点击下载按钮,为方便测试可以只下载第一张图(设置 Pages Range 为 1),然后将 [EHD] 开头的日志复制至此

wyjtm commented 3 years ago

1 我截了图 这样行吗

@wyjtm请提供错误日志,已测试1110519的第一张图(6.56MB),下载没有问题

请按下F12切换至Console,然后点击下载按钮,为方便测试可以只下载第一张图(设置Pages Range为1),然后将[EHD]开头的日志复制至此

ccloli commented 3 years ago

@wyjtm 看起来表现和 issue 作者的差不多,可否点击其中任意一个 Final URL > 的链接,看看能否正常下载?

wyjtm commented 3 years ago

如果是重新安装chrome或者清除缓存 会有几率能够下载大于5m的图

但是用手动一个个下载的话 完全没问题 30多m的单图也能下载

wyjtm commented 3 years ago

@wyjtm 看起来表现和 issue 作者的差不多,可否点击其中任意一个 Final URL > 的链接,看看能否正常下载?

单独点可正常下载

还有一个问题 脚本下载错误之后会不断使用用户ip配额尝试 直到用尽 即使关闭网页也没用 我用的不多 这是今年开始偶尔会出现的问题

ccloli commented 3 years ago

@wyjtm 那确实比较迷惑,因为脚本里得到的 Network Error 是由扩展程序(对于你来说就是 Tampermonkey)返回的。至于更深层次的错误原因就不清楚了,因为脚本只是相当于借助扩展程序的 api 发起了一个请求,具体这个请求的处理是由扩展程序和浏览器来决定的。

不过你的场景和 issue 作者还是有点不太一样。issue 作者提到访问原始文件会提示 Invalid request,所以有可能是浏览器或扩展程序发出了错误的请求被服务器拦截了,或者服务器出了什么问题。而你的情况是文件可以正常下载,也就是直接访问是没问题的。

可否试试看换用 Violentmonkey 进行测试,或者在 Firefox 浏览器 上安装兼容的 扩展程序 试试能否复现?

wyjtm commented 3 years ago

@wyjtm 那确实比较迷惑,因为脚本里得到的 Network Error 是由扩展程序(对于你来说就是 Tampermonkey)返回的。至于更深层次的错误原因就不清楚了,因为脚本只是相当于借助扩展程序的 api 发起了一个请求,具体这个请求的处理是由扩展程序和浏览器来决定的。

不过你的场景和 issue 作者还是有点不太一样。issue 作者提到访问原始文件会提示 Invalid request,所以有可能是浏览器或扩展程序发出了错误的请求被服务器拦截了,或者服务器出了什么问题。而你的情况是文件可以正常下载,也就是直接访问是没问题的。

可否试试看换用 Violentmonkey 进行测试,或者在 Firefox 浏览器 上安装兼容的 扩展程序 试试能否复现?

222

这是暴力猴上的测试 还是不行

之前试过黑油猴和红油猴 也都是一样 火狐没试过

ccloli commented 3 years ago

另外 #188 的表现和你的差不多,可以帮忙按照下面的截图操作看看扩展程序的实际网络请求吗?

如果发现请求的状态栏有标红,再切换至 Console,应该会有错误的详细信息输出。

不过 #188 的情况是,过了几天,他的问题就自己好了……

还有一个问题 脚本下载错误之后会不断使用用户ip配额尝试 直到用尽 即使关闭网页也没用 我用的不多 这是今年开始偶尔会出现的问题

确认下设置里是否开启了 Retry automatically when images download failed 这一项,这项会在出错后自动重新下载而不是询问用户,所以如果频繁出现错误的话会直接重试,导致配额耗尽。

另外你目前正在下载的 gallery 过大,在获取下载链接时会消耗大量的配额(例如 6MB 的图片会消耗 60 点配额),而且看你的日志,脚本每次下载时都没有获取到图片的实际地址,所以每次都是访问会扣除配额的临时链接,因为默认会重试 3 次,所以配额消耗会再加上 3 倍(例如 6MB 的图片下载失败后重试 3 次就是 (1+3) x 60 = 240 点配额)

ccloli commented 3 years ago

这是暴力猴上的测试 还是不行

看了下这个错误日志比较正常一些,至少返回了一些响应信息,但是还是看不出来是什么原因

image

左边的日志输出能把这个过滤条件清除掉吗?

wyjtm commented 3 years ago

01 02 01 这样?

ccloli commented 3 years ago

@wyjtm 嗯,第二张图的那个窗口(background.html)再切到 Console,然后确认下 Filter 的文本框是空的

wyjtm commented 3 years ago

03

ccloli commented 3 years ago

@wyjtm 嗯,看来也没有给出具体的信息,只有 ERR_FAILED

188 最后倒是给出来了一个 CORS 错误,刚刚翻了下 Tampermonkey 的 issue,估计是 Chrome 的一个 bug 。不过这个 bug 目前应该修复了,也只影响 Chrome 90。

目前梳理下来的情况是,Tampermonkey 的稳定版和 BETA 版都报错,Violentmonkey 也一样,而且已经排查了网络问题,文件是可以直接下载的。如果不是第三方扩展有问题的话,那可能又是 Chrome 的一个 bug 了。

可以帮忙再试试看其他的浏览器,比如 Firefox 或者 Edge 吗?如果这些还是有问题,那只能说是迷之错误,只能说爱莫能助了 😢

wyjtm commented 3 years ago

@wyjtm 嗯,看来也没有给出具体的信息,只有 ERR_FAILED

188 最后倒是给出来了一个 CORS 错误,刚刚翻了下 Tampermonkey 的 issue,估计是 Chrome 的一个 bug 。不过这个 bug 目前应该修复了,也只影响 Chrome 90。

目前梳理下来的情况是,Tampermonkey 的稳定版和 BETA 版都报错,Violentmonkey 也一样,而且已经排查了网络问题,文件是可以直接下载的。如果不是第三方扩展有问题的话,那可能又是 Chrome 的一个 bug 了。

可以帮忙再试试看其他的浏览器,比如 Firefox 或者 Edge 吗?如果这些还是有问题,那只能说是迷之错误,只能说爱莫能助了 😢

edge上也不行 报错无法下载 在火狐上确认到有下载会中途中断重新下载几次 会成功 都是用的油猴

ccloli commented 3 years ago

另外看了下你的网络请求,失败的请求都只接收了 303B image

和 issue 作者的截图 301B 差不多 image

所以比较怀疑你们俩都遇到了同一个错误,可能你下载到的文件最后得到的也是那个 Invalid request

所以可能是浏览器或者扩展中间出了什么问题,导致服务器无法接受请求 🤔

Firefox 中途中断可能是网络问题,我个人也感觉 Firefox 对于网络连接的稳定性处理不如 Chrome。但是最终下载如果成功了,那可能真是 Chrome 的什么迷惑 bug 🤔

ccloli commented 3 years ago

总之看起来应该不完全是脚本的问题,毕竟 Firefox 表现比较正常一些。所以如果要继续使用脚本的话,可能需要暂时使用 Firefox 了。或者也可以尝试下别的工具,比如通过命令行实现的 https://github.com/mikf/gallery-dl

wyjtm commented 3 years ago

总之看起来应该不完全是脚本的问题,毕竟 Firefox 表现比较正常一些。所以如果要继续使用脚本的话,可能需要暂时使用 Firefox 了。或者也可以尝试下别的工具,比如通过命令行实现的 https://github.com/mikf/gallery-dl

下载问题可能解决了 在测试 又出现了新问题 g/1397507/8a1a850b1b/ 这个下好后3g多 然后一直卡在 Generating Zip file...

1397507_8a1a850b1b/358.jpg

这里无法继续 请问怎么办?

SECOND24 commented 3 years ago

這個超過5MB無法下載的問題 在Chrome 91版還是存在 FireFox 89版 還是可以正常下載

ccloli commented 3 years ago

@wyjtm 饿,如果一直卡着的话可能多半是内存不足出错了……这个脚本并不适合下载非常大的 gallery,因为浏览器可能没法处理这么大的数据,基于 readme 里的数据,建议不要下载超过 500MB 的文件,过大的文件很有可能会出现意料之外的错误。如果确实需要下载这么大的项目,最好使用 Pages Range 功能分段下载。

如果等待一段时间确实没有继续,而且 F12 里有错误的话,那多半是内存不足炸了……由于数据都是放在内存里的(也是浏览器的限制),所以估计下载好的这些数据应该也没法取出来。 鼠标悬浮在下载的状态框顶,会有一行 If an error occured and script doesn't work, click here to force get your downloaded images.,点击它会尝试重新生成。不过如果这行文本没出现,或者是点击也没效果,那……估计就是废了,RIP。

总之对于非常大的 gallery,如果有 torrent,建议优先通过 torrent 下载。比如你下载的这个 gallery 就有对应的 种子文件 (3.67GB 那个,如果你不想要通过做种获得奖励,可以用 Redistributable Torrent 放到迅雷之类的不靠谱 BT 软件里下载) ,使用它下载应该会获得更稳定的体验(至少我试了下,即便是迅雷也能有 6MB/s,而且能下载完成,希望这能给你一些慰藉 😂 )。

xuejianxianzun commented 2 years ago

网络请求 200 但是请求失败,有一个可能的原因是系统盘(或者说是 Chrome 缓存文件所在的磁盘)剩余空间小于 4G(或者更少),此时 Chrome 浏览器对于 XHR 请求的文件,在请求成功后如果发现文件体积较大,就会直接对这个请求做失败处理。 注:fetch 请求不会受到这个限制。

bennyz327 commented 8 months ago

硬碟空間和記憶體都還有很多空間 使用 Edge (版本 119.0.2151.93 (官方組建) (64 位元)) 限制範圍下載單圖片 13 MB 大小,會出現一樣的結果顯示 Invalid request,單圖片小則不會出現這個問題 目前是改用火狐下載,不管單圖片大小多少都可以正常下載

錯誤訊息倒是忘記記錄下來,但是都跟前面分享的錯誤訊息差不多

ccloli commented 8 months ago

限制範圍下載單圖片 13 MB 大小,會出現一樣的結果顯示 Invalid request,單圖片小則不會出現這個問題

有可能是近期原始圖片也會走 H@H,而部分 H@H 的節點無法連結

理論上 3 次失敗後,重新開始下載,會生成新的圖片鏈接,會指向新的節點