Python在手,資源我有!人生苦短,我用Python

Python在手,資源我有!人生苦短,我用Python

事情的起因是這樣的:

由於我想找幾部經典電影學習學習,欣賞欣賞,於是便向某老司機尋求資源

我備註了需要正規視頻,絕對不是他想的那種資源

然後他丟給了我一個視頻資源網站,說是比較有名的視頻資源網站。我竟然相信了,我可是個正經人!

於是便激動地點開尋求經典電影,沒想到這引出了一段經典的百度網盤之戰。

福利:私信回覆【pdf】可獲取Python電子書

免責申明:

文章中的工具等僅供個人測試研究,請在下載後24小時內刪除,不得用於商業或非法用途,否則後果自負,文章出現的截圖只做樣例演示,請勿非法使用

我們先來打開那個網站後看到的東西:

Python在手,資源我有!人生苦短,我用Python

看到這個電影標題我就放心了,看來是一個正規的網站,正規的電影資源。

懷著滿滿的對電影的求知慾,於是我點開了鏈接,並在網頁下方看到了視頻資源鏈接。

Python在手,資源我有!人生苦短,我用Python

這裡有2種資源,一種是百度網盤,另一種是迅雷種子,不得不說這個網站還是比較良心,相較於只發圖不留種的某些網站,良心滿滿!因此我選擇默默地將資源添加到網盤收藏。

看到網盤又多了幾部佳作,心情頓時美滋滋,但僅僅添加幾部作品並沒有滿足我的收藏慾望

於是我便開始探索如何快速將視頻資源自動添加到百度網盤,也由此引發了我對於百度網盤的一系列鬥爭。

戰爭序幕

首先通過觀察該網站url構成,以及網頁源碼組成

我決定採用爬取的方式採集資源鏈接地址。

網頁截圖:

該過程並沒有遇到很大的問題

我採用了python+協程的方式進行採集,很快便獲取了一部分資源地址:

Python在手,資源我有!人生苦短,我用Python

目前資源地址都有了,然而對於百度網盤資源

仍然需要我一一點開,然後添加到我的網盤,此步驟太耗費精神

因此我決定繼續挖掘自動添加資源到百度網盤的方法。

注意:以下內容是本文的重點技術內容,關乎著我與百度網盤一戰的最終結局,請勿走開,精彩繼續

終極之戰

首先我通過抓包

查看源碼,審查元素等方式分析了百度分享頁面的特徵,判斷其是否適合爬蟲方式。

Python在手,資源我有!人生苦短,我用Python

在經過一系列測試之後,我發現雖然過程有點曲折

但還是可以用爬蟲的方式實現自動化的添加資源到網盤。

要實現這一技術,我總結了以下幾點流程:

  • 獲取用戶cookie(可以手動登錄然後抓包獲取)
  • 首先爬取如:http://pan.baidu.com/s/1o8LkaPc網盤分享頁面,獲取源碼。
  • 解析源碼,篩選出該頁面分享資源的名稱、shareid、from(uk)、bdstoken、appid(app_id)。
  • 構造post包(用來添加資源到網盤),該包需要用到以上4個參數+cookies。

詳細的細節就不說了

戰績

花費了近1個小時之後

我寫完了代碼,其中大部分時間主要花費在調試與研究數據包上,

期間遇到了很多坑,但最終還是解決了。

欣賞下程序運行時的快感吧:

Python在手,資源我有!人生苦短,我用Python

Python在手,資源我有!人生苦短,我用Python

搞完這些,寫下這篇文章差不多快半夜12點了,不行來精神了,睡不著了!

看個小電影再睡。。。。

Python在手,資源我有!人生苦短,我用Python


分享到:


相關文章: