2017年3月17日 星期五

python script: rapidgator downloader for windows

有在用rapidgator.net的人都知道, 下載檔案時常常中斷, 至今原因不明...
再加上chrome沒有自動續傳的功能(甚至在預設的設定中, 續傳功能是被關閉的), 所以一中斷就要手動去點續傳, 非常的麻煩。

由於個人不想用網路上針對這些免空的下載軟體, 只好自己找解決方案。

中間用了Windows版的wget, 發現它可以自動續傳沒有問題, 但是...下載下來的檔案名稱會變一串怪東西:
index.html@r=download%2Findex&session_id=xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

WTF!!

因為最近剛好在學習程式語言python, 就拿它來寫了一個小小的script, 主要的工作流程大概是這樣:

  1. 透過Rapidgator的API, 登入Rapidgator, 取得session ID
  2. 將該session ID與Rapidgator的下載頁面連結結合, 向Rapidgator取得檔案的資訊 (檔案名稱、大小等等) 以及完整的下載連結
  3. 呼叫wget, 開始下載檔案, 當下載中斷時, 自動續傳檔案
  4. 當下載完成時, 根據步驟2取得的檔案名稱, 透過Windows指令"ren"重新命名
  5. (個人喜好) 若下載下來的檔案副檔名為rar時, 呼叫"7zip"將rar解壓縮並刪除原本的rar檔

在這個script中, 使用的資源有:


敝人拙作下載連結: https://drive.google.com/open?id=0B6x3YTf2Q9R8ekNoa2pMbmRPems

希望可以幫助到碰上相同問題的朋友。


注意事項:

  • 下載下來的zip檔中, 已經包含了wget及7zip
  • 您需要有自己的rapidgator帳號
  • 下載下來後, 請使用文字編輯器修改py_wget.py中的username及password
  • 此Script只能在Windows執行
  • 執行前別忘了安裝Python for windowshttps://www.python.org/downloads/windows/