Mediaset Infinity Downloader 是一個用於下載 Mediaset Infinity 電影或電視節目的打字稿庫。它使用 yt-dlp 下載實際劇集。
要使用 mediaset-infinity-downloader,請克隆此儲存庫並將 cd 到克隆的資料夾中。然後你必須安裝所需的軟體包
# 安裝 typescript runnernpm install --global ts-node# 安裝專案包 npm install
使yt-dlp
可供腳本存取:
下載可執行檔(適用於您的機器)
將可執行檔放入資料夾src/executables
調整您的src/user/config.ts
文件,確保ytDlpPath
正確且outputFolder
存在。
使用包含劇集或電影頁面的字串陣列填入src/user/episodes.ts
。下面的例子
匯出預設值 [ 'https://mediasetinfinity.mediaset.it/video/terraamara/episodio-243_F311851102010702', 'https://media://mediafinity.mediaset.it/video/terraamara/episodio-242_Fsetinfinity.mediaset.it/video/terraamara/episodio-242_Fsetinfinity.mediaset.it/video/terraamara/episodio-242_F311851102'
# cd 進入專案資料夾cd mediaset-infinitry-downloader# 執行腳本npm run start
預設情況下,yt-dlp 使用您要下載的 .mp4 的名稱作為輸出檔名,我在配置中新增了以程式設計方式更改檔案名稱輸出的方法。請按照以下步驟使用它
在 src/user/config.ts 中啟用customOutputName
調整customOutputNameFunction
以輸出一個字串,該字串將自動用作數組中對應元素的檔案名稱。
最簡單、最安全但最耗時
打開每個劇集頁面並手動複製連結。
將其加入到由刻度包圍的episodes.ts
數組中。
最容易失敗(如果 mediasetinfinity 更改頁面結構)但速度最快
捲動至劇集列表頁面底部
開啟瀏覽器控制台並貼上此 js copy($$('a[href*="/video/"]').map((x)=>x.href))
您將在剪貼簿中找到所有劇集連結的數組
將劇集數組貼到episodes.ts
檔中
最可靠(需要一些專業知識)
開啟劇集清單頁面(範例:https://mediasetinfinity.mediaset.it/fiction/bitterlands/episodi_SE000000001766,ST000000003181,sb100018308)
打開 devtools 並轉到 Network 選項卡
捲動到頁面底部
您將看到一個新type:'fetch'
請求,名為mediaset-prod-all-programs-v2
右鍵單擊然後Copy > Copy as fetch
前往開發工具的控制台選項卡
貼上複製的提取(下面的範例)
fetch("https://feed.entertainment.tv.theplatform.eu/f/PR1GhC/mediaset-prod-all-programs-v2?byCustomValue={subBrandId} {100018308}&sort=:publishInfoPode=|pidesc 1-1000", {"headers": { "accept": "*/*", "accept-language": "it-IT,it;q=0.9,en-US;q=0.8,en;q= 0.7", "sec-ch-ua": ""非A/品牌";v="8", "Chromium";v="114", "Google Chrome" ; v="114"", "sec-ch-ua-mobile": "?0", "sec-ch-ua-platform": ""Windows"", "sec-fetch-dest" : “空”,“sec-fetch-mode”:“cors”,“sec-fetch-site”:“跨站點”},“referrer”:“https://mediasetinfinity.mediaset.it/”,“ referrerPolicy" : "跨來源時嚴格來源","body": null,"method": "GET","mode": "cors","credentials": "omit"});
將range
queryParam 修改為您想要的任何數字(在上面的範例中我將其修改為 1 到 1000)
按 Enter 運行fetch
返回網路選項卡
選擇我們剛剛執行的請求,然後在預覽標籤中右鍵單擊entries
並按Copy value
。
將劇集數組貼到episodes.ts
檔中