亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何實現Python爬蟲之掌握酷狗音樂的加密過程

發布時間:2021-09-28 09:54:30 來源:億速云 閱讀:228 作者:iii 欄目:開發技術

本篇內容主要講解“如何實現Python爬蟲之掌握酷狗音樂的加密過程”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“如何實現Python爬蟲之掌握酷狗音樂的加密過程”吧!

我們在搜索欄上輸入我們想聽的音樂,小編輸入:刺客

如何實現Python爬蟲之掌握酷狗音樂的加密過程

  • 是不是看到了一系列音樂,怎樣得到這些音樂的一些信息呢?(這里指的音樂信息是指音樂的hash值和音樂的album_id值【這兩個參數在獲取音樂的下載鏈接那里會用到】,當然還包括音樂的名稱【不然怎么區別呢?】)。

  • 由于這一系列音樂是動態加載出來的,也就是如果直接解析這個界面的數據,根本得不到,這個時候我們就應該來到如下這個界面了。

如何實現Python爬蟲之掌握酷狗音樂的加密過程

是不是可以看到我們剛才看到的那些音樂了,而且展開其中一首音樂,可以發現上述小編講的哪些信息好像都有了呀!
我們看一下這個請求的網址吧!發現這是一個get請求,請求數據如下:

如何實現Python爬蟲之掌握酷狗音樂的加密過程

  • 小編搜索了多首歌曲,發現它們的請求參數有一個共同點,那就是除了keyword、clienttime、mid、uuid和signature這幾個參數值不同之外,其他的都差不多,而clienttime本意就是客戶端時間,它的值是一個時間戳,mid和uuid的值和clienttime一樣的,keyword它的值就是我們搜索的關鍵詞,現在我們需要的就是搞懂signature這個參數值到底是什么呀!

  • 小編得到這個signature參數值的長度為32,覺得應該是使用了加密,將一些初始數據,把它加密得到的,那么怎樣得到這個初始數據呢?

  • 小編點擊了這個網站所有的js文件,發現這個參數值在這個js文件下

如何實現Python爬蟲之掌握酷狗音樂的加密過程

  • 是不是看到了md5這個函數呀!這應該就是那個加密函數了吧!而o.join("")就應該是那個初始數據了,o是一個js數組。

  • 現在知道要獲取o的值,怎樣獲取呢?肯定是使用斷點呀!我們在signature周圍打上相應的斷點,然后執行斷點操作(這個小編就不一一贅述了,小編使用js斷點還是有一點懵逼的,就不在這里誤導大家了)。

如何實現Python爬蟲之掌握酷狗音樂的加密過程

如何實現Python爬蟲之掌握酷狗音樂的加密過程

  • 上述圖片就是那個js數組o中的值了,經過對這些數據進行分析,發現其實這其中絕大部分值就是我們請求網址的哪些參數值,讀者覺得呢?

如何實現Python爬蟲之掌握酷狗音樂的加密過程

  • 整個加密算法如下:

如何實現Python爬蟲之掌握酷狗音樂的加密過程

  • 這也太長了吧!原本小編打斷使用python來模擬這個加密過程,但是現在小編看到這么長,放棄了,但是并不代表加密過程就無法實現,小編查閱資料,發現原來python可以執行js語句,我們是不是只需結合python和js,就能實現這個加密了呢?開干!

  • 代碼如下:

如何實現Python爬蟲之掌握酷狗音樂的加密過程

  • 看看運行結果吧!

如何實現Python爬蟲之掌握酷狗音樂的加密過程

  • 是不是這樣就獲取我們想要的數據了呀!我們只需使用json解析這些數據,就可以獲取小編在上面提到的那兩個參數了。【音樂的hash值和音樂的album_id值】

3. 得到歌曲的下載鏈接

  • 在上述第二點那里講到音樂的hash值和音樂album_id值,為什么要提到它們倆呢?當然是為了給第第三點這里做鋪墊的哈!

如何實現Python爬蟲之掌握酷狗音樂的加密過程

  • 這個過程小編不會講的很詳細,因為小編今天講的重點是這個加密哈!

如何實現Python爬蟲之掌握酷狗音樂的加密過程

我們點擊一首歌播放,來到上述界面,可以看到歌曲的下載鏈接,這個請求的參數如下:

如何實現Python爬蟲之掌握酷狗音樂的加密過程

  • 這些請求參數中是不是看到我提到的那兩個參數呀!

  • 通過分析發現,其實只需以下三個參數即可請求成功!如下

如何實現Python爬蟲之掌握酷狗音樂的加密過程

如何實現Python爬蟲之掌握酷狗音樂的加密過程

到此,相信大家對“如何實現Python爬蟲之掌握酷狗音樂的加密過程”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

罗甸县| 胶南市| 舒兰市| 三明市| 舞钢市| 晋中市| 娱乐| 台南县| 井研县| 乌拉特中旗| 剑川县| 盐山县| 贞丰县| 兴化市| 九江市| 和静县| 山东省| 江口县| 五河县| 昭通市| 新绛县| 台前县| 汉源县| 长寿区| 哈巴河县| 神农架林区| 新宾| 河西区| 余姚市| 茌平县| 巫溪县| 夏津县| 大宁县| 杂多县| 广安市| 遂川县| 墨江| 广宁县| 嫩江县| 瓦房店市| 嘉义市|