熱血動漫番太好看了!用Python爬取了1T的動漫,記憶體都爆了
最近被室友安利熱血動漫番《終末的女武神》和《拳願阿修羅》,太上頭了周末休息熬夜看完了。不過資源不太好找,辣條一怒爬取了資源,這下可以看個夠了。室友崇拜連連,想起了我的班花,快點開學啊,阿西吧…
Python爬蟲-vip動漫採集
效果展示
爬取目標
網站目標:櫻花動漫
工具使用
開發工具:pycharm
開發環境:python3.7, Windows10
使用工具包:requests,lxml, re,tqdm
重點學習內容
正則的使用 tqdm的使用 各種音頻數據的處理
項目思路解析
搜索你需要的動漫數據,根據自己需要的影片不同解析影片的方法也是不一樣的(會挑選兩種影片進行解析)
在當前頁面需要提取出對應的章節資訊,獲取到章節資訊的a標籤的跳轉內容,提取出每個章節的名字,提取章節的方法我使用的xpath的方法(各位大佬可自行嘗試其他的方法)
url的數據需要自行拼接,根據新的url獲取詳情頁面的數據
按照正常思路首先應該查看播放地址是否為靜態數據
明顯看出數據並不是靜態數據,在區分是否為動態數據,通過抓包工具進行獲取。
也並不是動態數據,媒體數據也不知道怎麼形成的。
從頭在來從前端頁面在進行解析,找影片頁面的事件。
並沒有發現有效數據,但是在iframe下面的Script標籤有js跳轉地址 ,解析的數據網址和影片的播放地址是一樣的域名, 點擊查看, 這不是就是我們找的影片播放地址嘛 ,終於找到了,開始實現 在當前頁面通過xpath方式提取出script里的js跳轉地址, 拼接出新的影片鏈接播放地址,發送請求,通過正則表達式提取出所有MP4播放地址。
保存對影片數據發送請求,保存數據到mp4 ,通過tqdm工具能查看對應下載的速度以及下載的進度
這個影片的載入數據的規則是不一樣的載入的數據為m3u8的格式, 其他的音頻的數據載入可能也不一樣, 處理m3u8的數據稍稍的有丟丟複雜,它的m3u8的文件內部有嵌套了m3u8鏈接地址, 需要轉換對應的數據介面,進行鏈接地址拼接, 取出ts文件進行下載,拼接成影片。
項目思路總結
-
獲取到想要動漫的地址
-
提取詳情頁面的名字已經跳轉地址
-
獲取頁面的靜態js文件
-
解析影片播放地址或者m3u8文件
-
保存對應數據
簡易源碼分享