2015年7月1日 星期三

初試下載 i-cable 網頁上的影片,結果....

比我想像之中要更困難,初時我以為是很容易的。

總結,找 i-cable 網頁上片源是有點麻煩................

找i-cable 手機 apps 影片片源是容易的,但不能寫成自動化script,因為破譯不了下載link的 token

想轉貼 i-cable 網頁上片源 到社交網站上,一般人還是推薦使用 Internet Download Manager 去 download i-cable 網頁上片源,這是我現在想到最簡單的解決方法。



基本我不看 i-cable的,而是一位 hkepc 網友問我的問題。


第一天,試看有沒有 hls live streaming link,使用 user agent switcher模擬 iphone 觀看,結果沒有發現網頁有為 iphone 或 android 提供特別觀看 link。 之後直接 google 找有沒有人寫下下載方法,發現有使用 rtmpdump 下載方法,rtmpdump 模擬 rtmp prptocol,使用proxy rtmp連接方法去間接 capture data,試了真 work,但下載方法實在太麻煩,影片質素效果實在太差了,有時會甩嘴,聲畫不同步,下載時間很長,下載時間幾乎等同播放時間。雖然找到下載之法,但效果太差,還是不能用。


第二天,我將 rtmpdump 下載 i-cable 網頁上影片方法寫成script,但效果強差人意

download_icable_web_video.wsf (download i-cable 網頁影片script 要輸入 download i-cable影片網址)
 https://onedrive.live.com/download.aspx?cid=46E82FEE17A376C2&resid=46E82FEE17A376C2!162&canary=mmHimANIuy9NcZ8ZhzD4pa5pL11mCng%2BjhZCKtUM0Ok%3D6

其實找i-cable 手機 apps 影片片源更容易,但怎樣教懂一個普通人(這才是問題) 去分析並capture android tcp packet 然後再使用複雜工具去下載?

使用 i-cable apps 再使用Fiddler分析tcp packet,很容易就找到手機影片的 m3u8 playlist link,再使用 livestreamer或 ffmpeg  便很容易 download 得到影片,而且極少出現問題,沒有聲畫不同步的問題,沒有輸入多個 parameter 輸入錯誤之問題,但這個使用方法的先決條件係懂得livestreamer運用和有一定電腦知識,並且需要有一部已 root了的手機和一部PC。




reference link
RTMPDumpHelper 教學(youtube link)
RTMPDumpHelper 教學2 (youtube link)
RtmpDump ksv compile 版本
Downloads · K-S-V/Scripts · GitHub 
Save video from i-cable.com
Android抓包方法(一) 之Fiddler代理
ProxyDroid - Google Play Android 應用程式