學堂在線視頻字幕抓取2_油猴腳本編寫


寫在最前:互聯網並非法外之地,爬蟲僅供技術交流

運行環境

  • Tampermonkey 4.3.6

  • ECMAScript5(雖然選擇了5,但是還是用了ES6的語法)

爬取目標

  • 每個學堂在線的視頻和導學資源下載

效果呈現

  • 視頻界面的下載按鈕可以下載高清或標清的視頻
  • 導學界面的下載按鈕可以下載導學的markdown文件,這個用到了turndown這個第三方庫

油猴腳本的編寫

上次的文章已經介紹過怎么用python來編寫爬取視頻字幕。

但還沒有做字幕轉換,這次用油猴腳本來實現,並把字幕存成srt格式。

腳本的兩個鏈接

學堂在線視頻下載

學堂在線視頻下載輔助工具

腳本編寫的核心邏輯

具體的就不細寫了,可以看代碼。

  • 第一個關鍵主要就是上一篇文章推導出來的爬取步驟

  • 第二個關鍵就是字幕的轉換,把它從json格式的文件轉成srt

    json文件里面提供了他的開始時間、結束時間和文本。

    對應到srt的文件就是

    1
    hh:mm:ss.uuu(開始時間) --> hh:mm:ss.uuu(結束時間)
    text(文本)
    
  • 第三個關鍵就是文件的下載

    由於視頻和網站的域名不一樣,利用a標簽設置download屬性無效。所以利用url跳轉來實現。

蘋果電腦的播放測試

ffplay 5.1.2\ 設計方法概述\ 教學視頻.mp4 -vf subtitles=5.1.2\ 設計方法概述\ 教學視頻\(0\).srt

另外提供的一種方案

給不需要字幕的,也不希望下載油猴插件的人提供一種簡便的視頻下載方法。

右鍵視頻 => 檢查元素 => 找到mp4資源連接 => 新窗口打開 => 右鍵另存為

一鍵下載的方案

以現在的爬取經驗來說,是可以做到在python中輸入課程名字,選擇學期,然后就爬取該課程的所有視頻的。后期如果完成會接着更新。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM