獻給喜歡落網的朋友們

比較喜歡落網的音樂,聽落網也有1年多了,不知道落網的園友點這裏:http://www.luoo.net/html

去年曾經寫過一篇文章解決落網音樂不能下載的問題:落網的音樂很好聽的,你造麼?不能下載啊,怎麼破?node

時隔一年,落網早已改版,原來基於html分析音樂下載地址的代碼也已過期,平時工做過於繁忙,也沒有去維護那個工具。jquery

今天工做依舊忙的一沓糊塗,來聽落網放鬆一下,發現726這個期刊的音樂甚是不錯,每個音符組合在一塊兒喚起了我疲憊的神經,心血來潮,覺定要把這期的音樂下載下來,這纔想到以前作的下載工具已經不能用了。git

忙裏偷閒,把原來的代碼修改了一下,讓他適應了新版的html,說白了就是從html代碼中提取期刊信息,分析MP3的下載地址,好在落網沒有作的那麼絕,很快代碼就改好了(最初的代碼是在一個晚上寫出來的,弄的比較挫,因此如今也是比較挫~),嗯,又能夠愉快的下載音樂了。github

酷酷的,是否是有種geek的感受!web

下載地址

這個工具是基於nodejs的,能夠跨平臺跑在不一樣的系統上,代碼已經開源到GitHub上了,有興趣的能夠直接去clone一份:https://github.com/stanzhai/luoo-downchrome

使用方法

  1. 先把代碼clone下來,前提是你已經安裝了git,沒有的話直接去github下載代碼的zip壓縮包吧,git clone https://github.com/stanzhai/luoo-down.git
  2. 確保你已經安裝了nodejs,而後再代碼所在的目錄執行:npm install安裝所需的依賴包
  3. 一樣是在代碼所在的目錄執行node app就能夠運行啦
  4. 在落網上找到你喜歡的期刊,把期刊號輸入進來,回車就能夠獲取期刊信息,默認的期刊是726(這個期刊的音樂不錯,推薦給你們)
  5. 選擇你想下載的音樂,敲回車就能夠下載了,對於已經下載的音樂,再次敲回車能夠直接播放的(是否是很酷啊)
  6. 下載的音樂保存在downloads目錄中

實現原理

此次的實現和去年實現的原理上是同樣的,想了解實現的原理的園友能夠看一下我去年寫的那篇文章:http://www.cnblogs.com/jasondan/p/luoo-down.htmlnpm

此次不一樣的地方在於使用了cheerio去提取html中的數據,由於落網的此次改版使得提取信息不如之前那樣能夠直接分析字符串那麼方便了。api

cheerio是nodejs的一個第三方模塊,能夠認爲是精簡版的服務端jquery,它實現了jquery的核心選擇器功能,能夠很是方便的實現html數據的提取,用它開發web信息採集或者爬蟲真是太方便了:https://www.npmjs.com/package/cheerio網絡

其餘

關於信息採集,其實還能夠經過分析落網的App找到期刊的api接口信息,不過成本會略高一些,曾反編譯過他的Andriod客戶端,發現接口部分的代碼已經混淆加密了,也在iPhone上設置http代理,捕獲過他的接口調用地址,發現還要傳token,懶得分析他的token生成規則了,就採用了這種直接分析他的html頁面的方式去實現了,缺點固然也很明顯,那就是落網一旦改版,這個工具又不能用了,哈哈,只能期待落網的程序猿們少折騰啦!

分析MP3的下載地址也是很是簡單的,使用chrome隨便打開一個期刊,調出調試工具,分析網絡請求,而後隨便播放一首音樂就能找到mp3的下載地址了,固然若是你不嫌麻煩的話,也能夠直接從這個地址上下載音樂的,chrome真乃神器也!

相關文章
相關標籤/搜索