0 基礎!讓 ChatGPT 手把手教你用 Python 將 Youtube 影片轉成音檔(mp3)

筆者真的嚇到了🫢,沒想到我真的做到一行程式碼都沒寫,以菜鳥的語氣跟 ChatGPT 對話,就能完成一個用 Python 將 Youtube 影片轉成音檔(mp3)的小專案。

在這篇文章中,我附上與 ChatGPT 的完整對話,大家只要複製貼上就可以嘗試看看嚕!

0 基礎!讓 ChatGPT 手把手教你用 Python 將 Youtube 影片轉成音檔(mp3)(圖 1)

Python 環境安裝的部分我就不贅述了,筆者使用的是 Python3;不過有設定 alias name,讓 python3/pip3 的指令對應 python/pip。

😀:「我使用的程式語言是 Python,他有辦法抓取 Youtube 影片的音擋嗎?」

0 基礎!讓 ChatGPT 手把手教你用 Python 將 Youtube 影片轉成音檔(mp3)(圖 2)

ChatGPT 這邊也有提醒大家,不要未經授權下載有版權保護的影片喔!

from pytube import YouTube

# 設定要下載的影片 URL
url = "https://www.youtube.com/watch?v=VIDEO_ID"

# 建立 YouTube 物件
yt = YouTube(url)

# 取得影片的音軌
audio_stream = yt.streams.filter(only_audio=True).first()

# 下載音軌到指定的路徑
audio_stream.download(output_path="path/to/save/directory", filename="audio")

SETP 1:建立一個youtube-test.py的檔案,貼上 ChatGPT 的程式。

SETP 2:如果要執行程式,請安裝套件:pip install pytube。

SETP 3:將 url 替換成自己的:https://www.youtube.com/watch?v=IvOdTbIYZs4

這是筆者分享出書心得的影片。

SETP 4:在終端機輸入python youtube-test.py執行它,你會發現他自動建立了資料夾路徑,裡面存放著「audio」的檔案。

0 基礎!讓 ChatGPT 手把手教你用 Python 將 Youtube 影片轉成音檔(mp3)(圖 3)

😀:「有順利在「path/to/save/directory」這個路徑下產生「audio」的檔案了,但他無法打開,這個真的是音擋嗎?」

0 基礎!讓 ChatGPT 手把手教你用 Python 將 Youtube 影片轉成音檔(mp3)(圖 4)

請安裝套件:pip install pydub

😀:「如何與上一段程式結合呢?」

0 基礎!讓 ChatGPT 手把手教你用 Python 將 Youtube 影片轉成音檔(mp3)(圖 5)

Copy code
from pytube import YouTube
from pydub import AudioSegment

# 設定要下載的影片 URL
url = "https://www.youtube.com/watch?v=VIDEO_ID"

# 建立 YouTube 物件
yt = YouTube(url)

# 取得影片的音軌
audio_stream = yt.streams.filter(only_audio=True).first()

# 下載音軌到指定的路徑
audio_stream.download(output_path="path/to/save/directory", filename="audio")

# 讀取下載下來的音檔
audio_file = AudioSegment.from_file("path/to/save/directory/audio")

# 檢查音檔是否可以正常解碼
print(audio_file)

在終端機輸入python youtube-test.py,結果冒出一堆錯誤訊息。

0 基礎!讓 ChatGPT 手把手教你用 Python 將 Youtube 影片轉成音檔(mp3)(圖 6)

把錯誤的結果貼到 ChatGPT,他是會幫你解答的。

0 基礎!讓 ChatGPT 手把手教你用 Python 將 Youtube 影片轉成音檔(mp3)(圖 7)

若未安裝 homebrew 的朋友也可以詢問 ChatGPT 如何安裝。

在終端機輸入brew install ffmpeg,之後等他安裝完成(頗久的…)

0 基礎!讓 ChatGPT 手把手教你用 Python 將 Youtube 影片轉成音檔(mp3)(圖 8)

再輸入一次python youtube-test.py,從終端機來看,天下太平了!

0 基礎!讓 ChatGPT 手把手教你用 Python 將 Youtube 影片轉成音檔(mp3)(圖 9)

0 基礎!讓 ChatGPT 手把手教你用 Python 將 Youtube 影片轉成音檔(mp3)(圖 10)

然後我們把 ChatGPT 的建議加入最後一行,讓他轉成 mp3 檔案。

from pytube import YouTube
from pydub import AudioSegment

# 設定要下載的影片 URL
url = "https://www.youtube.com/watch?v=IvOdTbIYZs4"

# 建立 YouTube 物件
yt = YouTube(url)

# 取得影片的音軌
audio_stream = yt.streams.filter(only_audio=True).first()

# 下載音軌到指定的路徑
audio_stream.download(output_path="path/to/save/directory", filename="audio")

# 讀取下載下來的音檔
audio_file = AudioSegment.from_file("path/to/save/directory/audio")

# 檢查音檔是否可以正常解碼
print(audio_file)

# 將音檔轉換為 MP3 格式
mp3_file = audio_file.export("path/to/save/directory/audio.mp3", format="mp3")

此時你在終端機執行python youtube-test.py 會有一種感動!這個 mp3 擋真的在播放 Youtube 影片的音檔了…太神了…

0 基礎!讓 ChatGPT 手把手教你用 Python 將 Youtube 影片轉成音檔(mp3)(圖 11)

0 基礎!讓 ChatGPT 手把手教你用 Python 將 Youtube 影片轉成音檔(mp3)(圖 12)

結語:讓不會程式的人更願意嘗試

寫程式是一條非常艱辛的路,中間會遇到非常多的險阻與挫折。

就像上面展示的範例一樣,我們很難一次就得到正確的結果,但在發生錯誤時,過往會需要花費大量的時間除錯、找文件。

這些失敗的經歷會使人成長,但同時也會消耗熱情。

而 ChatGPT 的出現,很大程度地減緩了這塊的痛苦,讓我們更容易上手程式。

不過這對程式教育產業來說,可說是巨大的衝擊,因為人們多了一個全新的選擇(而且還不賴)。

下一篇就來分享如何搭配 OpenAI 的 whisper api 將音檔(mp3)轉換成文字吧!


AI 實戰 實測生成式 AI 工具、Vibe Coding 與自動化流程的第一手心得,把 AI 變成每天都用得上的即戰力。 林鼎淵 Dean Lin

想將 AI 導入自己的職場與生活嗎?歡迎購買筆者出版的新書,幫助您在 AI 的浪潮中站穩腳步,並在未來的職場競爭中佔據優勢!

林鼎淵著作《ChatGPT 與 AI 繪圖效率大師(新增 Copilot、Gamma、Runway、Suno)》
https://www.books.com.tw/products/0011004216
Talk

留言討論

留言載入中…