@kyometori/yt-downloader
TypeScript icon, indicating that this package has built-in type declarations

1.0.4 • Public • Published

Youtube Downloader

npm version Downloads Last Commit Code Size License

一個簡單的 Youtube 影音下載小工具。

Warning

This package can't run expectedly on Windows and I don't know why. If you can find the bug please help me.

使用前

在你使用之前,你必須自行安裝以下套件:

然後安裝此套件

npm i --save @kyometori/yt-downloader

開始使用

首先,先引入此套件

/* CommonJS */
const { videoDownload, videosDownload, playlistDownload } = require('@kyometori/yt-downloader');

/* ModuleJS */
import { videoDownload, videosDownload, playlistDownload } from '@kyometori/yt-downloader'

下載單一影片

videoDownload({ ...options });

其中 options 包括以下內容:

  • url:目標影片連結
  • filename:會出影片的檔名,預設為影片標題。
  • folder:檔案匯出的資料夾,預設為 result。使用相對路徑時,他為「相對於程式執行時的路徑」。
  • audioonly:是否只下載音檔,預設為 true

回傳值:Promise<ChildProcess>
範例:

videoDownload({
  url: 'https://www.youtube.com/watch?v=qX1xe1RzA94',
  filename: 'audio',
  folder: '../music',
  audioonly: true
})

批量下載影片

videosDownload({ ...options });

其中 options 包括以下內容:

  • urls:一個陣列,裡面是所有要被下載的影片連結。
  • filename:會出影片的檔名,預設為影片標題。
  • folder:檔案匯出的資料夾,預設為 result。使用相對路徑時,他為「相對於程式執行時的路徑」。
  • audioonly:是否只下載音檔,預設為 true

回傳值:Promise<ChildProcess>[]
範例:

videosDownload({
  urls: [
    'https://www.youtube.com/watch?v=35FxbLTlGNI',
    'https://www.youtube.com/watch?v=OTRcHcyolUM',
    'https://www.youtube.com/watch?v=OvLE3VQ18UY',
    'https://www.youtube.com/watch?v=807atqeFsVA',
    'https://www.youtube.com/watch?v=TZC02UdbStM',
    'https://www.youtube.com/watch?v=qQEbHEjne9M'
  ],
  filename: '<title>',
  folder: '../music',
  audioonly: true
})

下載播放清單

playlistDownload({...options});

其中 options 包括以下內容:

  • url:目標播放清單連結
  • filename:會出影片的檔名,預設為影片標題。
  • folder:檔案匯出的資料夾,預設為 result。使用相對路徑時,他為「相對於程式執行時的路徑」。
  • audioonly:是否只下載音檔,預設為 true

回傳值:Promise<Promise<ChildProcess>[]>
範例:

playlistDownload({
    url: 'https://www.youtube.com/playlist?list=PLFPTffQioGfYFs7Az7h0PusfVyCPI6iVe',
    folder: 'exports',
    audioonly: false
});

檔名 Markdown

在影片檔案的 filename 選項可以填入檔名,其中以下幾個特殊字眼會被解譯成特殊的字符,讓你可以更彈性的指定標題,包含以下:

  • <title>:影片的原標題
  • <year>:當前時間西元年
  • <month>:當前時間月
  • <date>:當前時間日
  • <index>:當前影片順位

其中 <index> 在一般的影片都是 1 號,只有在使用 playlistDownloadvideosDownload 時才會依據那個影片被下載的順序來填入。

範例程式:

playlistDownload({
    url: 'https://www.youtube.com/playlist?list=PLGejWpTS0U0Ix0pa3UZJE4LMWGm7IHcqs',
    folder: 'goodmusics',
    filename: '<year>-<month>-<date>_<index>'
})

範例輸出(檔名):

2021-8-5_1.mp4
2021-8-5_2.mp4
2021-8-5_3.mp4
...

Readme

Keywords

Package Sidebar

Install

npm i @kyometori/yt-downloader

Weekly Downloads

9

Version

1.0.4

License

MIT

Unpacked Size

31.6 kB

Total Files

8

Last publish

Collaborators

  • kyometori