關於Twitch視頻回放錄像的下載

網上似乎有很多下載方法,但似乎都不怎麼奏效,今天筆者分享個實測好用的下載方法
首先安裝個chrome(能安裝插件的瀏覽器就可以,火狐,360極速也行),安裝個有解析在線視頻功能的插件,進入你想下載的頁面,這時候解析插件基本上開始解析了,如圖(我也不知道自己用的啥插件,反正都能用)
這裏寫圖片描述

下載類似index-muted-wpa4u1xhad.m3u8的文件(這裏最好把這個文件的下載地址粘貼到一個記事本里,等下會用到,爲方便敘述,就當下載地址是https://vod=false),文件名可能有區別,大體上是index-***.m3u8
下載好後,用記事本打開index-**.m3u8,類似下圖就對了
這裏寫圖片描述

再下載ffmpeg,我準備了64位windows的下載地址(鏈接:https://pan.baidu.com/s/1bo5h8nH 密碼:p6sc),其他的就去官網下載吧
網址是 http://ffmpeg.org/ ,懂點英文應該能下載吧(macos和Linux的還是下載源碼自己編譯吧,也方便以後寫程序用)

常用ffmpeg的,建議設置個環境變量,不常用就算了
這裏寫圖片描述
設置好環境變量後,打開cmd,找到剛纔讓記下的m3u8文件的下載地址(https://vod*=false),在cmd中輸入

ffmpeg -i "https://vod*=false" -c copy out.mkv

//此處注意地址儘量加雙引號,避免轉義字符的干擾

這時候,會出現如下圖
這裏寫圖片描述

把紅線畫出的部分複製下來(單引號不用,引號之內的複製,假設此處複製的是https://vod/0.ts

打開迅雷,點新建任務的那個”+“
這裏寫圖片描述
點添加批量任務
出現如下圖
這裏寫圖片描述

然後在"通過URL過濾”中輸入
https://vod/(*).ts
你複製的地址如下的情況下輸入如上,即把序號用(*)代替
https://vod/0.ts
通配符填1,從09,點確定,並開始下載
通配符填2,從1099,點確定,並開始下載
通配符填3,從100999,點確定,並開始下載(具體結束項數看m3u8文件)
關於1000以上的下載方法,比如下載1000.ts到1999.ts
可以在"通過URL過濾”中輸入 https://vod/1(*).ts
通配符填3,從100999,點確定,並開始下載
其餘的類似

需要注意的一點如下:
由於版權問題,涉及到未授權的音樂片段Twitch會予以靜音
被靜音的分段會加上muted 如1824-muted.ts
假設1821-1927被靜音
可以在"通過URL過濾”中輸入 https://vod/1(*)-muted.ts
通配符填3,從821927,點確定,並開始下載

下圖說明怎麼看結束項和被靜音的分段
這裏寫圖片描述

下載完成後會有一系列ts文件,例如1.ts-1000.ts,但中間還有些,例如21到28爲21-muted.ts一直到28-muted.ts這樣的靜音分段,那我們就先把這些文件複製到一個文件夾(假設爲D:\1\)裏,打開cmd並進入這個文件夾,再輸入

dir /b *.ts>1.txt

操作如圖
這裏寫圖片描述

這時候文件夾裏出現了一個1.txt文件,打開它
這裏寫圖片描述

全選->複製(快捷鍵操作問crtl+a–>crtl+c),新建一個Excel表格文件並打開,在A列第一格中右鍵,選擇性粘貼(只保留文本)
效果如下(以Excel2016爲例)

這裏寫圖片描述

然後在B列第一格輸入21.ts(由於A列第一格爲21-muted.ts,具體情況具體分析),然後用自動填充柄填充完(自動填充柄不會的自己度娘吧),再在C1中輸入

="ren "&A1&" "&B1

用自動填充柄填充C列,效果如下
這裏寫圖片描述

然後選中C列中的所有有文字的項,複製並粘貼到一個新的記事本中
如下圖所示

這裏寫圖片描述

保存,並把文件名重命名爲1.bat(後綴名一定要改),把這個批處理文件也放到D:\1\ 這個文件夾(存放靜音分段文件的文件夾)中,雙擊運行,黑框一閃,文件名全變成了例如21.ts等,將這些文件剪切回原來存放分段文件(0.ts-1000.ts)的文件夾中,現在ts文件的命名順序就爲0.ts-1000.ts(假設有1001個文件)

下面運行”生成批處理”程序(鏈接:https://pan.baidu.com/s/1mh6lenm 密碼:lhsx)

程序是筆者自己用C語言寫的,由於不知道ts文件的數目,而且直接用
copy /b *.ts out.ts
實測是不行的,windows會按開頭數字排序,像2.ts會在10.ts後面,覺得程序有病毒的,我下面貼上源碼,你自己編譯吧`

源碼如下:

#include <stdio.h>
#include <stdlib.h>

int main()
{
    printf("輸入ts文件的最大序號:");
    int n=0;
    scanf("%d",&n);
    FILE *f;
    f=fopen("combine_ts.bat","w");

    fprintf(f,"copy /b ");
    int i=0;
    for(i=0; i<n; i++)
    {
        fprintf(f,"%d.ts+",i);
    }
    fprintf(f,"%d.ts combine.ts\n",i);
    fclose(f);
    FILE *f1;
    f1=fopen("convert.bat","w");
    fprintf(f1,"ffmpeg.exe –i combine.ts –acodec copy –vcodec copy –absf aac_adtstoasc combine.mp4\n@pause");
    printf("操作完成,複製combine_ts.bat和convert.bat到含很多ts的文件夾下運行!!\n");
    fclose(f1);
    system("pause");
    return 0;
}

接下來把combine_ts.bat和convert.bat到含很多ts的文件夾下運行,先運行combine_ts.bat,再運行convert.bat,convert.bat運行不行的話,直接在含combine.ts的文件夾裏打開CMD,輸入

ffmpeg.exe –i combine.ts –acodec copy –vcodec copy –absf aac_adtstoasc combine.mp4

輸入這個的前提是你設置了ffmpeg的環境變量,如果沒設置,那就輸入(假設ffmpeg在D:\ffmpeg\bin\ 中)

D:\ffmpeg\bin\ffmpeg.exe –i combine.ts –acodec copy –vcodec copy –absf aac_adtstoasc combine.mp4

這一步是把ts文件轉化爲mp4文件,既減少了文件的容量,也讓播放變得流暢,雖然ts文件能直接播放,

好了,做了這麼多事情,最後combine.mp4就是下載到的視頻,修改下文件名就能保存了,其他的無關文件全刪了吧!!

再次放上所有附件的下載地址
鏈接:https://pan.baidu.com/s/1bUSbb4 密碼:0so7

純手打,有效的話大家給個評論,如果有什麼問題,或者鏈接失效之類的,也在評論區給我留言吧,關於其他網站的視頻下載方法,以後有機會再分享(打一篇博客太累了(lll¬ω¬))

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章