朋友說要被他女朋友煩死了,竟然是因為“小視頻”
Hello,大家好,我是阿粉,前幾天阿粉的一個朋友跟阿粉抱怨說自己快被女朋友煩死了,他說自己的女朋友報了一個舞蹈班,因為今年的疫情原因線下課程改成了線上課程,但是因為下班回來比較晚,線上的直播課經(jīng)常耽誤沒上到,而且這個課程視頻只能在線回看一周,很多復(fù)雜的動作要看好多遍才能學(xué)會,更由于很多時候種種原因就把課程給拉下了,女朋友就因為這個整天跟他鬧,搞的他心里很煩。
聽到這里阿粉真想給他一個大嘴巴子,有女朋友已經(jīng)不錯了,還敢嫌女朋友煩,阿粉默默的留下了淚水。不過話說回來如果可以把視頻下載下來不就可以一直看了嗎?了解的朋友都知道這種課程肯定是不提供下載功能的,但是這個小問題可以阻擋一般人,怎么能阻擋身為程序猿的阿粉呢!
在得知阿粉可以把視頻下載下來的時候,阿粉受到了威逼利誘,勉強答應(yīng)幫他看下能否把視頻下載下來。抱著試一下的心態(tài),阿粉要來了舞蹈室的課程地址,進入瀏覽器提示需要微信掃碼登錄,這個沒什么難度直接截圖,讓朋友女朋友掃碼登錄即可。登錄進去過后,看到了一系列的課程目錄。
阿粉隨便點了一個進去回看,就看到一個舞蹈老師在教舞蹈動作,雖然很好看但是阿粉還是沒有被吸引住,還是要想辦法找到視頻的鏈接地址。本能的在頁面上右鍵檢查,查看網(wǎng)頁代碼找到<video>視頻標簽,看到里面src 地址是一個blob:http://xxx 格式的地址。雖然阿粉能看懂前端代碼但畢竟還是后端為主,剛看到這個地址的時候還是愣了一下,難道這是什么高級協(xié)議嗎?
咨詢了一下度娘然后發(fā)現(xiàn)并不是什么高級協(xié)議,只是一種標記而已,我們的關(guān)鍵還是要找到有效的資源地址。抱著視死如歸的心情,阿粉接著看網(wǎng)頁源碼,突然阿粉的眼前一亮,因為阿粉看到了吃驚的一個注釋,內(nèi)容如下:
這幾個關(guān)鍵詞告訴阿粉,這個value 里面一定有可以使用的內(nèi)容,果不其然,阿粉在里面找到一個 m3u8 文件地址!可能有點小伙伴不知道什么是 m3u8 文件,m3u8 文件里面是很多小段的 ts 視頻地址,就相當于把一個長視頻分成很多段存在在一個索引文件里面。播放器在拿到 m3u8 文件過后就可以自動下載里面的視頻進行播放。
阿粉把這個 m3u8 文件下載下來看了一下,內(nèi)部確實都是小段 ts 視頻,到這里資源的地址我們已經(jīng)找到了,下面的問題就是需要根據(jù) m3u8 文件下載相應(yīng)的視頻內(nèi)容就好。這里阿粉在度娘的幫助下找到了名叫 VLC 的視頻播放器,這個播放器可以配置網(wǎng)絡(luò)模式,根據(jù) m3u8 文件地址自動下載視頻。
下載 VLC 打開過后,點擊 file->advanced open file 在 network 下面按照截圖把 m3u8 地址放進去,然后勾選 stream output,在點擊 setting 進去設(shè)置一下。
點擊 browse 選擇下載后文件的保存路徑,然后在 Video 下拉框中選擇 h264 編碼,不要問為什么,因為我們下載的 TS 格式視頻模式就是用的 h264 編碼。通過上面一頓操作,一個視頻文件就下載下來了,看到這里朋友在旁邊直呼了不起,五體投地。
操作了幾波下載了幾個視頻看了下都能正常播放跟回看的內(nèi)容沒有區(qū)別,阿粉把這個方法教給了朋友,這樣他就再也不用被女朋友煩了,還能在女朋友面前秀一手,想到這里阿粉又吃狗娘扎心了。
到這里阿粉不得不思考一個問題,我們在日常的編碼過程中有沒有考慮被別人破解的風險呢?阿粉還不是專業(yè)的黑客,就很簡單的把一個付費課程給下載下來了,那些更厲害的黑客要想破解簡直輕而易舉。另外阿粉通過瀏覽器的控制還看到了許多信息的輸出,有些東西是不能輸出的,就像我們做后端開發(fā)不能將賬號密碼等敏感信息明文打印日志一樣,這些都是存在風險的,一旦被黑客獲取到那就是一場重大數(shù)據(jù)泄露事故。
瀏覽器的控制臺應(yīng)該只有程序員才會打開看,有的網(wǎng)站控制臺還是很有意思的,不知道大家看到過百度網(wǎng)站控制臺的信息沒,如果你還是學(xué)生可以去看一下,說不定會有驚喜哦。