西西軟件園多重安全檢測(cè)下載網(wǎng)站、值得信賴的軟件下載站!
西西首頁(yè) 電腦軟件 安卓軟件 電腦游戲 安卓游戲 排行榜 專題合集

bilibili_video_download.exe

綠色python版
  • bilibili_video_download.exe綠色python版
  • 軟件大小:93.8M
  • 更新時(shí)間:2021-04-29 17:10
  • 軟件語(yǔ)言:中文
  • 軟件廠商:
  • 軟件類別:國(guó)產(chǎn)軟件 / 免費(fèi)軟件 / 下載工具
  • 軟件等級(jí):3級(jí)
  • 應(yīng)用平臺(tái):WinAll
  • 官方網(wǎng)站:暫無(wú)
  • 應(yīng)用備案:
好評(píng):50%
壞評(píng):50%

軟件介紹

bilibili_video_download.exe是一款Python編寫(xiě)做成的可以批量下載BiliBili視頻的下載器軟件,導(dǎo)入的庫(kù)包括用于爬取和解析網(wǎng)頁(yè)的庫(kù),還包括創(chuàng)建線程池的庫(kù)和進(jìn)行其他處理的庫(kù),大多數(shù)都是Python自帶的。

軟件說(shuō)明

軟件前言

在正常情況下(不使用其他工具或插件),Web端的bilibili似乎無(wú)法(徹底白嫖)下載視頻,遂學(xué)習(xí)了如何利用Python爬蟲(chóng)下載b站視頻(不包括會(huì)員視頻),詳情(手法)且看下文。

參考視頻:https://www.bilibili.com/video/BV1Fy4y1D7XS

在分析b站網(wǎng)頁(yè)源代碼的過(guò)程中發(fā)現(xiàn)其視頻和音頻是分開(kāi)的,下載后一個(gè)只有聲音,一個(gè)只有畫(huà)面,這顯然不能滿足我們的要求。解決方案是:利用 ffmpeg 這款強(qiáng)大的開(kāi)源工具把下載后的音視頻進(jìn)行合并。故想要完美體驗(yàn),先得下載安裝并配置好 ffmpeg 。(到官網(wǎng)下載,解壓后把文件夾內(nèi)的bin 添加到環(huán)境變量)

Python中使用到的模塊有:requests、re、json、subprocess、os

準(zhǔn)備工作

視頻的url比較顯眼,容易獲取。headers也好找,但還需要一重要信息。

通過(guò)瀏覽器(F12)查看分析目標(biāo)網(wǎng)頁(yè),找到我們的下一目標(biāo),即視(音)頻下載鏈接。

一番查找后,發(fā)現(xiàn)在head里的第四個(gè)script 標(biāo)簽內(nèi)似乎有我們想要的東西。

可訪問(wèn)此鏈接,卻出現(xiàn)403,即沒(méi)有權(quán)限訪問(wèn)此站。

這又怎么回事?查看Request Headers 信息,發(fā)現(xiàn)沒(méi)有referer這一項(xiàng),于是嘗試在數(shù)據(jù)包中加上referer信息看能否訪問(wèn)。(這里直接上bp了)

Forward后,出現(xiàn)文件下載頁(yè)面。

下載后打開(kāi)改文件,確為目標(biāo)視頻。

獲取數(shù)據(jù)

通過(guò)requests庫(kù)向目標(biāo)站點(diǎn)發(fā)起請(qǐng)求,請(qǐng)求需包含header、referer等信息,以偽裝成是瀏覽器發(fā)出請(qǐng)求。如果服務(wù)器能正常響應(yīng),會(huì)得到一個(gè)Response,便是所要獲取的頁(yè)面內(nèi)容。

測(cè)試代碼:

運(yùn)行結(jié)果:

解析內(nèi)容

得到的內(nèi)容可能是HTML、json等格式,可以用頁(yè)面解析庫(kù)、正則表達(dá)式等進(jìn)行解析。

title信息比較好找,就在head中。

利用正則表達(dá)式對(duì)其進(jìn)行提取。

復(fù)制代碼 隱藏代碼 title = re.findall('<title data-vue-meta="true">(.*?)</title>',html_data)[0].replace("_嗶哩嗶哩 (゜-゜)つロ 干杯~-bilibili",""

音視頻下載鏈接在json數(shù)據(jù)中。

利用正則表達(dá)式和字典(列表)的“鍵”對(duì)其提取。

測(cè)試代碼:

運(yùn)行結(jié)果:

保存數(shù)據(jù)

通過(guò)下載鏈接,將音視頻下載到本地并保存。

測(cè)試代碼:

運(yùn)行結(jié)果:

合并音視頻

把分開(kāi)的音頻和視頻進(jìn)行合并。(幾次測(cè)試下來(lái),發(fā)現(xiàn)如果用視頻標(biāo)題作為文件名去執(zhí)行ffmpeg命令會(huì)導(dǎo)致其出現(xiàn)錯(cuò)誤,暫時(shí)沒(méi)找到解決方法,后來(lái)試著將文件名先重命名為1.mp3、1.mp4這種簡(jiǎn)單的名字,可以完成合并,再刪除之)

測(cè)試代碼:

運(yùn)行結(jié)果:

合并后視頻正常播放,有聲有色。

最終代碼

效果:

打包成exe

首先我們要先安裝Pyinstaller,直接在cmd使用pip命令

然后,把ffmpeg和py文件放置到同一文件夾下。

因?yàn)閒fmpeg是要一起打包的,需要對(duì)代碼中的相應(yīng)目錄做小幅修改。修改后的代碼如下:

修改好后,cmd切換到我們剛剛放文件的目錄,執(zhí)行如下命令:

(這里-i bilibili.ico是對(duì)程序的圖標(biāo)進(jìn)行設(shè)置,為可選項(xiàng))

執(zhí)行完畢會(huì)發(fā)現(xiàn)當(dāng)前目錄多了幾個(gè)文件夾,打開(kāi)其中名為dist的文件夾,里面生成了一個(gè)名為bilibili_video_download的exe應(yīng)用程序,并且圖標(biāo)也是我們?cè)O(shè)置的圖案。(這里要把exe文件移動(dòng)到上一級(jí)目錄,即ffmpeg的同級(jí)目錄)

使用說(shuō)明

點(diǎn)擊運(yùn)行exe應(yīng)用程序,輸入視頻URL即可下載。

下載完畢!

軟件標(biāo)簽: 嗶哩嗶哩 bilibilimp4

發(fā)表評(píng)論

昵稱:
表情: 高興 可 汗 我不要 害羞 好 下下下 送花 屎 親親
查看所有(0)條評(píng)論 > 字?jǐn)?shù): 0/500

TOP
軟件下載