2019年12月1日 星期日

MahoMangaDownloaderVer9.6更新

這次改版很好笑的是, 兩個禮拜前新增加的網站都雙雙改版, 導致下載器都不能下載了, 這真是神奇阿..., 應該不是針對我吧(?)  總之既然有使用者回報, 那我就來修吧, 不過這邊真的不得不承認, 這下載器已經五歲了, 現在網站改版我大概都知道是什麼問題, 處理效率比以前快超多, 這就是所謂的經驗吧...。 (雖然只針對爬蟲部分, 對工作沒什幫助就是了XD)

首先關於動漫之家(dmzj)改版後不能下載的問題, 主要是他以前網站完全沒擋下載器, 所以我也就直接用最簡單的方式去載圖片, 這次網站改版後會去檢查header看這download request是不是從他家網頁來的, 所以這邊就是很單純的加些header處理擋下載器的問題。

再來是youma的部分, 這個就有點好笑了, 原本這網站是我上上禮拜新支援的, 結果兩天後網站就死了, 死了一個禮拜後, 上禮拜我又新增一個替代網站, 沒想到有使用者反應這網站又復活了, 可是下載器卻不能載, 查了一下發現是網站強制要求https要使用tls1.2以上, 因為.net webrequest預設的ssl沒這麼新, 所以下載器才會不能下載, 這部分就是把設定打開就好, 不是什麼大問題。 這樣看起來這網站之前會死掉應該是管理者在改伺服器設定的關係, 只是有夠久就是了...。 不過奇怪的是這網站其實也沒有強制要求一定要用https, 就算用http也能正常瀏覽, 既然這樣的話網站幹嘛改成https的ssl一定要tls1.2以上, 這真是神奇哪...。

原本Ver9.6是要作使用者提的user experience enhance的, 不過這個禮拜我迷上某一款遊戲每天下班都在玩, 這次改版還是我今天兩小時前全破後才開始看前幾天的使用者留言後才修的, 使用者體驗的改版就麻煩讓我留到Ver9.7吧~。

再來不好意思容我傳教一下(未滿18歲的乖小孩麻煩請離開, 不要點下面的連結), 我這個禮拜都在玩一款最近DLSite上架的RPG 工口遊戲:
フォーリン・ラビリンス -隷属の少女たち-
















這款RPG遊戲製作大師製作的遊戲, 可以排行在我玩過的同人遊戲中前三名無庸置疑, 不管是完成度, 角色, 劇情都超級讚, 最厲害的地方是雖然我看不懂日文, 可是光是靠漢字以及語音, 我幾乎能理解八成以上的故事內容, 劇情的有趣性以及角色配音的高完成度所建立的高代入感, 讓我超享受遊戲中的世界, 雖然遊戲的遊玩時間大概是10小時左右, 不過我破完第一輪大概花了20多小時, 一直捨不得推主線, 真的好久好久沒這麼享受玩遊戲了, 這樣的遊戲不要說台幣600, 就算1200我也照樣收, 強力推薦阿!!!  期待這團隊下一次的作品(這遊戲才上市不到一個月, 應該還有得等就是了XD)


Ver9.6 更新內容:


下載器Demo圖:





介紹:
https://project.zmcx16.moe/?page=mahomangadownloader


環境需求



簡單除錯:
  1. 如果下載失敗, 麻煩先用瀏覽器測試看資源是否存活。
  2. 如果能正常用瀏覽器瀏覽, 麻煩先查看LogFiles資料夾內的log檔案看錯誤訊息為何。
  3. 回報問題時, 麻煩提供有問題的網址以及log內容, 這樣我才有辦法測試找問題原因。


檔案位址:
https://drive.google.com/open?id=1mrdOi53uQpK7vEdwyMRsM1_cJuzz29tY

32位元版本:
https://drive.google.com/open?id=1-_e9LTrYkR_XW3ybWsfFs87SI_Upt5H7

解壓密碼:zmcx16



免責聲明:
******************
MahoMangaDownloader僅作為學術研究使用,禁止利用本程式行非法用途。

44 則留言:

  1. 在 9.5 版用內建的自動更新會失敗。
    mv 原本檔案到 backup
    但是做完之後原本的資料夾是空的。
    內容:

    ---
    ROBOCOPY ...
    ---
    The operation completed successfully.

    C:\Users\ ... \ myFolder>if
    = 16 (
    echo "copy build fail. error code = 1"
    echo "MyFolder" is exist, exit the batch.
    pause
    del ".... update.bat" & exit
    ) else (cmd /c exit /b 0 )


    但是 bat 跟下載下來的 zip 都沒有刪掉

    回覆刪除
    回覆
    1. 您好, 我剛剛測試是能正常更新的, 如果更新失敗的話, 再麻煩自行手動更新: copy User_Data資料夾到新版下載器目錄下即可。

      另外上面那段只是把batch cmd印出來, 目前線上更新在更新完成後會把舊版重命名, 載下來的zip也預設不會移除, 只要更新完有換檔成功並且執行新版的程式即是更新成功了。

      載下來的zip刪除之前想說讓使用者找個時間自行移除就好, 之後會考慮直接在更新時移除掉~。

      刪除
  2. Your IP address has been temporarily banned for excessive pageloads which indicates that you are using automated mirroring/harvesting software. The ban expires in 40 minutes and 40 seconds

    軟體版本是9.0,網站是ex
    很多天沒用軟體下載,下載之前也沒有大量流覽
    放了4個任務下載,2個下載成功之後剩下的兩個任務指令變Pause
    連上網頁看就得到上述訊息

    請問這是以後無法使用了嗎XD

    回覆刪除
    回覆
    1. 您好, 這個就是被網站ban了, 如果你的網路環境是浮動ip, 只要換個ip就能繼續下載, 反之如果你的網路是租屋或學校網路是共用ip的話, 就只能等他時間冷卻。 以EH站來說有1hr 24hr 72hr 甚至1星期都有可能, 如果沒辦法換ip的話, 建議少量下載 + 把程式的設置->延遲時間調到5000甚至以上, 讓他下載慢些以免被網站Ban ip。

      刪除
    2. 感謝回答
      不過因為之前用了好幾年都沒改過設定也沒被BAN過
      IP也是沒有跟別人共享

      所以想確認到底是
      1.ex最近改了判定方式導致照以前軟體設定下載變成會被BAN(換IP也沒用)
      2.IP黑掉,換個IP照樣可以用原本設定下載不會被BAN(換IP就好)
      3.單純個案各種巧合導致被ex抓到,只是運氣不好(什麼都不用做)

      謝謝!

      刪除
    3. 您好, 我覺得應該是以前你運氣好或是網路慢, 所以才從來沒被ban, 以我自己使用來說, 我的預設設定通常載一個小時就會被ban, 因為我是浮動ip+自己有寫換ip的程式讓下載器自動幫我換ip, 所以我不用理會ip被ban的問題。

      另外關於你的問題1跟2, 主要取決於你的cookie是不是有牌的, 如果你是銅牌以上的帳號, 那你被ban換ip也沒用, 因為網站記的是你的帳號而不是ip了, 反過來如果你的帳號是一般帳號, 那換個ip就能躲過並繼續下載。

      EH站我印象中應該是3~4年改過一次偵測機制, 以前的話下載器的預設設定基本上就不會被ban, 可是3~4年前改過偵測機制後, 偵測機制變得很聰明, 除非你延遲時間真的設超級長, 不然靜態ip很難不被ban(有時就算你剛好載完沒被ban, 網站也會事後ban你ip), 唯一能做的只有調高延遲時間 & 少量下載。

      刪除
  3. 作者已經移除這則留言。

    回覆刪除
  4. 你好 我win10點程式沒有反應,但在win7上可以執行,請問該如何解決?

    我試過關防毒,跟相容性的問題了。

    回覆刪除
  5. 大大你好,雖然已經受惠於您的程式2年多了,在這邊還是說聲謝謝。

    最近突然有個問題就是下載的套圖有辦法下載原始檔png的圖嗎?

    因為下載下來的檔名都是jpg,檔案大小也比較小,所以想確認一下。

    如有冒犯請見諒ˇˇ

    回覆刪除
    回覆
    1. 您好, 除了少數webp格式的網站會在額外轉檔以外, 其他網站下載器下載的邏輯都是以該網站上面可以拿到的圖檔直接下載。 另外EH站的圖片都是有壓縮的, 不過他有額外提供原圖的連結, 下載器的選單->設置->Ehentai有下載原尺寸圖檔的功能, 勾選後下載器載的圖檔就會是原始圖檔。

      如果你的問題不是指EH站的話, 可以提供有問題的網站, 我在研究看看是什麼原因。

      刪除
    2. 是EH的沒錯,原來下方就有原圖設定我一直沒看見,謝謝您。

      另外就是我從9.4版升級至9.6之後,原本9.4的資料夾變"MahoMangaDownloader_BackupV9.4_20191208_055449",因為以往我記得都會覆蓋,這會有重複安裝的問題嗎?還是直接移除即可。

      刪除
    3. 您好, 目前預設的線上更新功能是會保留舊版並加上日期重命名, 下載器本身是不需要安裝的可攜式程式, 可以直接手動移除就好。

      因為線上更新只是簡單做沒考慮太多, 未來可能會加自動移除, 舊版只留User_Data資料夾就好。

      刪除
    4. 了解~非常感謝

      刪除
  6. 您好,請問一下現在設定檔沒有作用了嗎?我記憶中從9.0開始好像設定就不會套用了,例如選單>設置裡面的參數設定,還有預設的下載位置,修改過後重開又會回到預設狀態

    回覆刪除
    回覆
    1. 您好, 我目前自己測試是正常的, 不確定是不是你的設定檔有壞掉, 以下載器的邏輯如果載入設定失敗會直接使用預設設定, 如果你願意的話, 可以把設定檔(User_Data\mmd_setting.ini)寄給我([email protected]), 我在測試看看是什麼問題。

      刪除
    2. 您好,跟您確認過後功能是正常之後,我把整個資料夾移動到其他地方就正常了,至於為什麼原本放置的資料夾會讓程式無法讀取設定檔就不清楚了...謝謝您的回覆!

      刪除
    3. OK, 如果有其他問題歡迎隨時提出~。

      刪除
  7. 您好, 麻煩確認以下兩樣皆有安裝:
    1. .Net framework 4.5.2或以上的版本
    https://www.microsoft.com/zh-tw/download/details.aspx?id=42642

    2. Visual C++ 2013 (只能安裝2013版, 其他版本不行)
    https://www.microsoft.com/zh-TW/download/details.aspx?id=40784

    回覆刪除
  8. Visual C++ 可轉散發套件不同年份是獨立的元件, 可以互相並存。
    x64 or x86就看你下載器是使用哪個版本裝對應的即可。

    回覆刪除
  9. 不客氣, 有問題歡迎隨時提出~。

    回覆刪除
  10. 你好,下載manhuagui的圖檔時候可不可以幫個位數和雙位數編號的檔名前面補零變成三位數呢? 因為MangaMeeyaCE在讀檔的時候會按照1>10>100~109>11>110~119>12>120~129>13...的順序,如果下載的時候就能幫檔名前面補零就太好了,謝謝

    回覆刪除
    回覆
    1. 您好, 下載器選單->設置->頁碼位數改成3就可以了喔 :)

      刪除
  11. 請問,到manhuadb網站新增漫畫,按新增會出現.....您的應用程式發生未處理的例外狀況。如果您按一下「繼續」,應用程式會忽略錯誤並嘗試繼續。如果您按一下結束,會立刻關閉應用程式。 這有辦法解決嗎?
    謝謝

    回覆刪除
    回覆
    1. 您好, 下載器並沒有支援manhuadb網站喔。 支援網站可以參考這裡:
      https://project.zmcx16.moe/?page=mahomangadownloader

      刪除
  12. 不好意思 想問你一個很白癡的問題
    因為我之前下載的時候出問題所以我重新下載9.6版
    請問cookie的手動要如何打......

    回覆刪除
  13. 你好最近用下載器下載EX網的東西都下載個兩三頁後就卡住不會再動了
    觀察下來應該也不是流量的問題
    因為直接用網頁瀏覽圖片都沒有問題
    請問是不是Ex網站否是有什麼機制有改變過導致不能利用下載器下載
    謝謝

    回覆刪除
    回覆
    1. 您好, 我最近都可以正常下載, 你可以先看一下LogFiles資料夾內的log檔案看錯誤訊息為何。

      刪除
    2. ERROR 2020/01/05 06:11:56 ImgFile download_file System.AggregateException: 發生一或多項錯誤。 ---> System.Net.WebException: 在 WebClient 要求期間發生例外狀況。 ---> System.IO.IOException: 無法從傳輸連接讀取資料: 連接已關閉。
      於 System.Net.ConnectStream.EndRead(IAsyncResult asyncResult)
      於 System.Net.WebClient.DownloadBitsReadCallbackState(DownloadBitsState state, IAsyncResult result)
      --- 內部例外狀況堆疊追蹤的結尾 ---
      --- 內部例外狀況堆疊追蹤的結尾 ---
      於 System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
      於 System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
      於 System.Threading.Tasks.Task.Wait(TimeSpan timeout)
      於 FileIO.ImgFile.download_file(String download_url, String path, String file_name_no_extension, List`1 headers, Image_Format img_format)
      ---> (內部例外狀況 #0) System.Net.WebException: 在 WebClient 要求期間發生例外狀況。 ---> System.IO.IOException: 無法從傳輸連接讀取資料: 連接已關閉。
      於 System.Net.ConnectStream.EndRead(IAsyncResult asyncResult)
      於 System.Net.WebClient.DownloadBitsReadCallbackState(DownloadBitsState state, IAsyncResult result)
      --- 內部例外狀況堆疊追蹤的結尾 ---<---

      刪除
    3. 實際狀況GIF:
      https://imgur.com/vPWuoVH

      刪除
    4. 您好, 看log這問題是無法從網站拿到圖源, 我自己基本上遇到這情況只會是暫時的, 還沒遇過完全不給載的情況。

      如果只有EX會這樣, 表站不會有的話, 那應該是你帳號的問題, 基本上EX帳號如果是銅牌以上, 那網站的cookie就會記帳號, 換ip什麼的就都沒用了。

      如果是表站跟裏站都一樣, 想請問一下你有用VPN嗎? 有使用VPN的情況這問題會比較常見, 因為這問題是伺服器端不給載, 除非能找到不給載的原因不然基本上沒有解...。

      刪除
    5. 您好,
      之後我重新下載了一次之後就能用了
      交叉測試後原本的依然不能用
      原因還是不清楚
      這裡附上我的壞掉的整包檔案:
      https://mega.nz/#!AFcmSKQY!TEwBBRw__aTAE4c2_Dq_v-4BnIznKJaA6FBSTLLCSv0

      刪除
    6. 恩...我也想不出個所以然, 這種鬼故事我也是第一次遇到, 問題有解決就好吧XD

      刪除
    7. 您好 首先謝謝您辛苦寫了這個程式 並無私的分享
      抱歉 因為我不是很懂程式
      但是我也發生了這樓的樓主看起來一樣的狀況
      我嘗試了樓主的解決辦法 也沒有辦法成功下載
      於是我也去看了LogFiles資料夾內的log檔
      但是沒有像樓主一樣有那麼多的訊息可以截
      是我開的方式不對嗎? 我是用記事本開的
      並且也因為我嘗試了樓主的所說的解決辦法
      LOG檔忘記先留備份下來
      但是後來發現到一個問題
      不知道是不是正常的 所以跑來詢問
      問題敘述:
      我發現我不管重新解壓縮下載的壓縮檔 並開啟程式後
      LogFiles資料夾內的log檔 都會有這個訊息

      WARN 2020/01/10 00:24:09 UserSetting ReadSettingToIni Read mmd_setting.ini fail, write default setting.

      請問這是正常的嗎?
      並且嘗試使用來後下載EX網的本子之後
      也是出現一樣的問題
      但是LogFiles資料夾內的log檔裡面也不會多訊息
      一直都是以上那句
      可能是個蠢問題 還是麻煩您了 謝謝

      刪除
    8. 您好, 上面的log只是載入使用者設定檔失敗, 這樣只會優先使用預設設定, 並不會影響下載, 你可以把mmd_setting.ini砍掉讓下載器自己重新產生一份。

      另外想先確認一下, 你的問題是只有裏站不能載, 還是表站跟裏站都不能載? 如果只有裏站不能載, 那應該是cookie的問題, 因為幾個月前裏站有改版, cookie不重新產生會沒辦法使用。

      如果還是不行的話, 不介意的話可以把程式 & cookie寄給我, 我在測試看看是什麼問題。
      信箱: [email protected]

      刪除
    9. 非常謝謝您回答我的問題
      我照您說的"把mmd_setting.ini砍掉讓下載器自己重新產生一份"之後再測試下載後就可以下載了
      雖然在按開始下載前 跟之前不一樣
      頁數只會顯示0/0
      但是按了下載後就能正常顯示頁數並下載成功了
      非常感謝您的幫忙

      刪除
    10. 這樣看起來是設定檔有壞掉, 不過讀取設定那段我有用try-catch包起來處理, 這樣應該是那邊雖然過了可是有些設定是爛的導致後面有問題, 問題有解決就好~

      刪除
    11. 非常感謝您撥空解決我的問題 <(_ _)>

      刪除
  14. 您好, 我的症狀跟樓上的一樣 不過我是用n站
    log:
    ERROR 2020/01/06 22:29:28 ImgFile download_file System.InvalidOperationException: 工作必須處於完成狀態 (RanToCompletion、Faulted 或 Canceled) 才能被處置。
    於 System.Threading.Tasks.Task.Dispose(Boolean disposing)
    於 System.Threading.Tasks.Task.Dispose()
    於 FileIO.ImgFile.download_file(String download_url, String path, String file_name_no_extension, List`1 headers, Image_Format img_format)
    ERROR 2020/01/06 22:31:29 ImgFile download_file System.InvalidOperationException: 工作必須處於完成狀態 (RanToCompletion、Faulted 或 Canceled) 才能被處置。
    於 System.Threading.Tasks.Task.Dispose(Boolean disposing)
    於 System.Threading.Tasks.Task.Dispose()
    於 FileIO.ImgFile.download_file(String download_url, String path, String file_name_no_extension, List`1 headers, Image_Format img_format)
    麻煩健檢一下QQ

    回覆刪除
    回覆
    1. 您好, 我剛剛測試下載是沒問題的, 不過N站我基本上很少下載, 因為N站比E站還會ban ip, 還會有我不是機器人認證, 所以建議N站還是少量下載...。

      刪除
  15. 不好意思 有發顯下載https://hitomi.la/網站的圖片都無法下載
    脽然有抓到網頁卻是下載都不行

    回覆刪除
    回覆
    1. 您好, hitomi有改版把圖片藏的更裏面, Ver9.7有修復網站改版後不能下載問題, 如果還有遇到問題歡迎隨時告知~。

      刪除