Youtube:修訂版本之間的差異
出自福留子孫
(→(二)) |
(→用 AI 解析 youtube 內容) |
||
| (未顯示同用戶所作出之52次版本) | |||
| 第 10 行: | 第 10 行: | ||
#再找到之後的第一個 </script> ,取兩者之間,捨棄其他網頁原始碼。 | #再找到之後的第一個 </script> ,取兩者之間,捨棄其他網頁原始碼。 | ||
#取其間的 {"responseContext":…}}}}}}} 捨棄最後的「;」,存成 json 格式。 | #取其間的 {"responseContext":…}}}}}}} 捨棄最後的「;」,存成 json 格式。 | ||
| − | #目前 2~4 步驟已寫入 2YTpreTidy1.php | + | #目前 2~4 步驟已寫入 2YTpreTidy1.php 中,自動擷取。可擷取的有用資訊為影片的: |
| + | #* 頻道訊息: | ||
| + | #*#頻道識別碼(channelId) | ||
| + | #*#擁有者(owner),其實是 channelTitle 。在 channelId 不變的前提下,可改名。 | ||
| + | #*#頻道 URL (ownerURL),加在 youtube.com 之後,可到達頻道。在 channelId 不變的前提下,可修改。 | ||
| + | #* 影片訊息: | ||
| + | #*#識別碼(ID) | ||
| + | #*#標題(title) | ||
| + | #*#片長(length) | ||
| + | #*#描述短摘要(descriptionSnippet) | ||
#執行 2YTpreTidy1.php 將其塞入 YTpreTidy 資料表,且已有的片子不會重複塞入資料表。 | #執行 2YTpreTidy1.php 將其塞入 YTpreTidy 資料表,且已有的片子不會重複塞入資料表。 | ||
#*json 若碰到雙反斜線「\\」,是特殊語法,無法 decode ,會出錯,請務必確認 (例如:檀东东 搜索技术,普通人变强的唯一外挂。全套详细宝藏教程… know sth \ learn sth \ create sth \ do sth…,其中的「反斜」在原始碼中會轉義為「\\」,導致 json_decode 出錯) | #*json 若碰到雙反斜線「\\」,是特殊語法,無法 decode ,會出錯,請務必確認 (例如:檀东东 搜索技术,普通人变强的唯一外挂。全套详细宝藏教程… know sth \ learn sth \ create sth \ do sth…,其中的「反斜」在原始碼中會轉義為「\\」,導致 json_decode 出錯) | ||
| 第 29 行: | 第 38 行: | ||
===三、以 ID 取得更多訊息=== | ===三、以 ID 取得更多訊息=== | ||
| − | + | 若已解析過 history ,本步驟可省略,因為所有重要資訊在解析 history 時已取得。 | |
| − | # | + | ====(一)縮圖的預設位置==== |
| − | # | + | # 120×90 :https://i.ytimg.com/vi/{VIDEO_ID}/default.jpg |
| − | # | + | # 320×180 :https://i.ytimg.com/vi/{VIDEO_ID}/mqdefault.jpg |
| + | # 480×360 :https://i.ytimg.com/vi/{VIDEO_ID}/hqdefault.jpg | ||
| + | # 640×480 :https://i.ytimg.com/vi/{VIDEO_ID}/sddefault.jpg | ||
| + | # 1280×720 :https://i.ytimg.com/vi/{VIDEO_ID}/maxresdefault.jpg | ||
| + | |||
| + | ====(二)以 oembed(嵌入) 取得==== | ||
| + | https://www.youtube.com/oembed?format=json&url=https://www.youtube.com/watch?v=jjT1iKZZYes | ||
| + | #<span style='color:brown'>title</span>: "為什麼我們急需一組星鏈?低軌衛星的上網速度真的夠快嗎?"(解析 history 時已取得) | ||
| + | #<span style='color:brown'>author_name</span>: "PanSci 泛科學"(解析 history 時已取得) | ||
| + | #<span style='color:brown'>author_url</span>: "https://www.youtube.com/@PanScitw"(解析 history 時已取得) | ||
#type: "video" | #type: "video" | ||
#height: 113 | #height: 113 | ||
| 第 38 行: | 第 56 行: | ||
#version: "1.0" | #version: "1.0" | ||
#provider_name: "YouTube" | #provider_name: "YouTube" | ||
| − | #provider_url: "https | + | #provider_url: "https://www.youtube.com/" |
#thumbnail_height: 360 | #thumbnail_height: 360 | ||
#thumbnail_width: 480 | #thumbnail_width: 480 | ||
| − | #thumbnail_url: "https | + | #thumbnail_url: "https://i.ytimg.com/vi/jjT1iKZZYes/hqdefault.jpg" |
| − | #html: '<iframe width="200" height="113" src="https | + | #html: '<iframe width="200" height="113" src="https://www.youtube.com/embed/jjT1iKZZYes?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen title="為什麼我們急需一組星鏈?低軌衛星的上網速度真的夠快嗎?"></iframe>' |
===四、使用 YouTube Data API=== | ===四、使用 YouTube Data API=== | ||
====(一)獲取 API 金鑰:==== | ====(一)獲取 API 金鑰:==== | ||
| − | + | Google雲端平台 (Google Cloud Platform) 提供一系列 Google 雲端運算服務: | |
| − | + | #對執行 Google 搜尋提供基礎設施服務 | |
| + | #對 YouTube 伺服器提供基礎設施服務 | ||
| + | #平台服務 | ||
| + | #無伺服器計算環境 | ||
| + | 除了提供管理工具外, Google 雲端平台還提供了一系列模組化雲服務,包括: | ||
| + | #雲端運算 | ||
| + | #資料儲存 | ||
| + | #資料分析 | ||
| + | #機器學習 | ||
| + | 其進入點為:[https://console.cloud.google.com/welcome?hl=zh-tw&project=jendoorg https://console.cloud.google.com/welcome?hl=zh-tw&project=你的專案名] | ||
| + | # 擁有一個 Google Cloud Platform 帳戶: | ||
| + | #*進入 [https://cloud.google.com/ https://cloud.google.com/] | ||
| + | #*用既有的 google 帳號登錄 | ||
| + | #*啟動免費試用:<br/>GCP 通常會提供免費試用期,這可能包括一定的信用額度,讓你可以在不產生費用的情況下試用他們的服務。<br/>點擊“開始免費試用”或類似的按鈕開始註冊過程。 | ||
| + | #*提供必要的個人信息:註冊過程中,你將需要提供一些個人信息,包括你的姓名、聯繫信息、國家/地區等。 | ||
| + | #*提供付款信息:<br/>即使是免費試用,GCP 也會要求你提供有效的信用卡信息。這是為了確保在免費試用結束後,如果你繼續使用服務,他們可以收取費用。<br/>你的信用卡不會在免費試用期間被收費,除非你超出了免費使用額度。 | ||
| + | #*同意服務條款:閱讀並同意 Google Cloud Platform 的服務條款。 | ||
| + | #*啟動帳戶:完成以上步驟後,你的 GCP 帳戶就會被啟動,可以開始使用 Google Cloud 的各種服務。 | ||
| + | #專案項目: | ||
| + | #*在 Google Cloud Console 中創建一個新的項目。 | ||
| + | #*目前丁丁的 gmail 帳號擁有兩個專案: | ||
| + | #*#jendoOrg:給振鐸用 | ||
| + | #*#OMG123:不知道被誰啟動了 24 項服務,丁丁於 2024.2.9 用「https://console.cloud.google.com/welcome?hl=zh-tw&project=omg123-34b9d / IAM 與管理 / 左側選單 / 設定 / 上方選單 / 關閉」然後系統回覆「預定於 2024年3月10日後刪除」。 | ||
| + | # 設定金鑰用限制: | ||
| + | #*「雲端平台 / 快速存取 / API 和服務」 | ||
| + | #*「左側選單 / 憑證 / API 金鑰」其中有兩支 API 金鑰: | ||
| + | #*# YTapi :給取 youtube metadata 用,限四個 ip ,但可呼叫任何 API | ||
| + | #*#* 114.32.220.42:信義的固定 ip | ||
| + | #*#* 114.35.52.233:板橋的固定 ip | ||
| + | #*#* 220.132.155.103:中和的固定 ip | ||
| + | #*#* 36.231.xxx.xxx:信義區網內的浮動 ip | ||
| + | #*#* 測發出請求電腦本身的 ip :ipchicken.com,ipleak.net | ||
| + | #*# API 金鑰 1:給 google map 用,限六個域名網址,可呼叫的已啟用 API | ||
| + | #*在「左側選單 / 憑證 / 上方選單 / 建立憑證 / API 金鑰」可以再新增一支 API 金鑰。 | ||
| + | # 啟用 YouTube Data API v3 | ||
| + | #*「雲端平台 / 快速存取 / API 和服務」 | ||
| + | #*「左側選單 / 已啟用的 API 和服務 / 中央區服務名稱列表 / YouTube Data API v3 / 啟用」 | ||
| − | ====()==== | + | ====(二)使用 API 查詢影片資訊:查 part=參數一,參數二,…==== |
| − | ==== | + | <pre style='font-size:smaller'>https://www.googleapis.com/youtube/v3/videos?id={VIDEO_ID}&part=snippet,contentDetails,statistics&key={YOUR_API_KEY} |
| − | ====()==== | + | https://www.googleapis.com/youtube/v3/videos?id={YOUR_VIDEO_ID}&part=contentDetails&key={YOUR_API_KEY} |
| − | ====()==== | + | https://www.googleapis.com/youtube/v3/videos?id={VIDEO_ID}&part=snippet&key={YOUR_API_KEY}</pre> |
| − | ====()==== | + | {VIDEO_ID}放的是影片的識別 ID ,{YOUR_API_KEY}放的是合法的 API key 。 |
| − | === | + | |
| + | 請求成功後,會收到一個 JSON 格式的回應(本段表述為 data )。 | ||
| + | |||
| + | 可用的 part 參數有 snippet,contentDetails,statistics … 等,分述如後: | ||
| + | #contentDetails:回應內含影片的<span style='color:brown'>時間長度</span>(duration 屬性),格式為 ISO 8601 持續時間格式,如:PT15M33S 表示 15 分鐘 33 秒。(解析 history 時已取得) | ||
| + | #snippet(片段):data['items'][0]['snippet']['title'] 為影片<span style='color:brown'>標題</span>(解析 history 時已取得);data['items'][0]['snippet']['publishedAt']為影片的<span style='color:brown;font-weight:bold'>上架日期</span>,以 UTC 時間 ISO 8601 格式返回,如: 2023-01-02T15:04:05Z 。data['items'][0]['snippet']['description']為影片<span style='color:brown;font-weight:bold'>說明</span>。 | ||
| + | #statistics:提供影片的統計信息,如<span style='color:brown;font-weight:bold'>觀看次數</span>、喜歡次數、討厭次數、評論數等。 | ||
| + | #status:提供影片的狀態信息,如影片是否已公開、是否允許評論等。 | ||
| + | #player:提供影片播放器的相關信息,通常是嵌入式播放器的 HTML 代碼。 | ||
| + | #topicDetails:提供關於影片主題的信息,包括相關的 Freebase 主題 ID。 | ||
| + | #recordingDetails:提供影片錄製的詳細信息,如錄製位置和錄製時間。 | ||
| + | #fileDetails:提供影片檔案的詳細信息,這通常只對影片上傳者可用。 | ||
| + | #processingDetails:提供影片處理的狀態信息。 | ||
| + | #suggestions:提供有關影片的建議信息,比如建議如何改善影片質量。 | ||
| + | #liveStreamingDetails:如果影片是直播,則提供直播的詳細信息,如開始和結束時間。 | ||
| + | |||
| + | ====(三)免費使用配額==== | ||
| + | # YouTube Data API 的免費使用配額限制是每日 10,000 單位。 | ||
| + | # 在太平洋時間午夜時重置。 | ||
| + | # 不同的 API 請求會消耗不同數量的配額單位。如,一個簡單的 videos.list 請求(用於獲取影片資訊)可能會消耗幾個單位,而一個複雜的請求(如上傳影片)則可能會消耗更多單位。 | ||
| + | # 查看 YouTube Data API v3 使用情形 | ||
| + | #*「雲端平台 / 快速存取 / API 和服務」 | ||
| + | #*「左側選單 / 已啟用的 API 和服務 / 中央區服務名稱列表 / 點擊 YouTube Data API v3」中央區第二層: | ||
| + | #*# 指標:「選取圖表」核取選單中有九種圖表可以複選 | ||
| + | #*# 配額與系統限制:可以核取配額種類,然後選「編輯配額」 | ||
| + | #*# 憑證:會列出「與這個 API 相容的憑證」,如:YTapi 、 API 金鑰 1 | ||
| + | |||
| + | ===五、使用 ytexplore.com=== | ||
| + | 可使用影片ID、頻道ID、播放清單ID,查出該對象的進一步細節;也可以比較兩個同等級的對象。 | ||
| + | |||
| + | ===六、使用 chrome 外掛(成效不佳)=== | ||
| + | *外掛名:無限制的YouTube視頻摘要生成器 - ChatGPT / Unlimited Summary Generator for YouTube | ||
| + | *外掛設定:「從擴充功能中選擇該外掛 / 詳細資料 / 擴充功能選項 / AI Provider / OpenAI API / gpt-3.5-turbo / API key(由 open AI 產生) / Save」 | ||
| + | *前提:該影片須有字幕,該外掛是利用字幕形成摘要的 | ||
| + | *使用:進入某一影片的播放畫面,點擊「<img width=20 height=20 src='https://upload.wikimedia.org/wikipedia/commons/0/04/ChatGPT_logo.svg' /> Transcript & Summary」: | ||
| + | *# Transcript:抄自字幕的記錄副本 | ||
| + | *# Summary:AI 做的摘要 | ||
| + | |||
| + | ===七、影片牆程式參考範例=== | ||
DS218 /ggp/browseWPND.php | DS218 /ggp/browseWPND.php | ||
| 第 82 行: | 第 174 行: | ||
===下載 youtube 影片=== | ===下載 youtube 影片=== | ||
下載高清畫質影片 | 下載高清畫質影片 | ||
| − | #4K Video Downloader | + | # [https://www.4kdownload.com/zh-tw/downloads/7# 4K Video Downloader] 免費版,丁丁有買付費版,註冊不受版本更新影響。 |
| − | #[[VideoHunter]] 月租版或年租版 | + | #*目前主售已為「4K Video Downloader Plus」丁丁未買付費版 |
| + | # [[VideoHunter]] 月租版或年租版 | ||
===下載 youtube 字幕=== | ===下載 youtube 字幕=== | ||
| 第 111 行: | 第 204 行: | ||
==== 應用軟體 ==== | ==== 應用軟體 ==== | ||
#[[Google2srt|Google2SRT]] | #[[Google2srt|Google2SRT]] | ||
| + | |||
| + | ===用 AI 解析 youtube 內容=== | ||
| + | :✘ 無法直接觀看影片或取得其逐字稿,須先取得該影片的字幕 | ||
| + | :✔ | ||
| + | :# https://reccloud.com/tw/ 很強 | ||
| + | :#*免費配額:註冊可免費使用三天。可使用 3 次 YouTube 影片逐字功能,每次最多支援 20 分鐘的影片。 | ||
| + | :#*每週 US$12.90(約 NT$360),每週附 300 點數,適合短期或偶爾使用。 | ||
| + | :#*年會員:US$4/月(全年共 US$48,約 NT$1,392),含 3,000 點數/年 | ||
| + | :#*高階年會員:US$5.75/月(全年共約 US$69),應為升級版本,點數更高 | ||
| + | :# https://maestra.ai/zh (maestra 女高音歌手):上傳影片以 AI 辨識聲音生成字幕,提供時間戳、自動斷句並支援多語言。沒付錢只能看到一分鐘。 | ||
| + | :#*價格 | ||
| + | :#*#點數:60點/12美元: 125+種語言的轉錄 60分鐘 | ||
| + | :#*#點數:23美元/每月,每年付費, 125+種語言的轉錄 180分鐘/月 | ||
| + | :#*#精簡:23美元/每月,每年付費, 125+種語言的轉錄 180分鐘/月 | ||
| + | :#*#基本:39美元/每月,每年付費, 125+種語言的轉錄 360分鐘/月、AI 摘要、自定義 詞典、MaestraCloud 檔案共享 | ||
| + | :#*#高級:79美元/每月,每年付費, 125+種語言的轉錄 900分鐘/月、AI 摘要、自定義 詞典、MaestraCloud 檔案共享、Maestra 團隊和集中計費、增加1名團隊成員、API 訪問、優先支援 | ||
| + | :#*#企業: 定製定價、自定義開發、現場活動字幕、自定義 MSA SCORM 進出口... | ||
| + | :# TopMediai / iMyFone VoxBox / EasySub:這些工具也都提供自動字幕產生功能,支援將影片連結貼上即可產出中文字幕,格式包括 TXT、SRT 等。 | ||
2025年8月4日 (一) 09:07的最新修訂版本
目錄
History 整理
最多保持 90 天的觀看記錄,在登入狀態下,叫出觀看記錄連結:「https://youtube.com/feed/history」
請注意: YouTube 的結構和運作方式可能會隨時間變化。
一、 30 天以內的觀看紀錄
- 打開 https://youtube.com/feed/history 網頁原始碼
- 找到 var ytInitialData = …
- 再找到之後的第一個 </script> ,取兩者之間,捨棄其他網頁原始碼。
- 取其間的 {"responseContext":…}}}}}}} 捨棄最後的「;」,存成 json 格式。
- 目前 2~4 步驟已寫入 2YTpreTidy1.php 中,自動擷取。可擷取的有用資訊為影片的:
- 頻道訊息:
- 頻道識別碼(channelId)
- 擁有者(owner),其實是 channelTitle 。在 channelId 不變的前提下,可改名。
- 頻道 URL (ownerURL),加在 youtube.com 之後,可到達頻道。在 channelId 不變的前提下,可修改。
- 影片訊息:
- 識別碼(ID)
- 標題(title)
- 片長(length)
- 描述短摘要(descriptionSnippet)
- 頻道訊息:
- 執行 2YTpreTidy1.php 將其塞入 YTpreTidy 資料表,且已有的片子不會重複塞入資料表。
- json 若碰到雙反斜線「\\」,是特殊語法,無法 decode ,會出錯,請務必確認 (例如:檀东东 搜索技术,普通人变强的唯一外挂。全套详细宝藏教程… know sth \ learn sth \ create sth \ do sth…,其中的「反斜」在原始碼中會轉義為「\\」,導致 json_decode 出錯)
- 2024.01.05更新2YTpreTidy1.php,因為有眾多 itemSectionRenderer ,所以多放一個foreach包住
- 為了容納繪文字(emoji),
- 將 title、descriptionSnippet、owner、ownerURL 四欄改為「utf8mb4_unicode_ci」
- 插入欄值前先執行「SET NAMES 'utf8mb4' COLLATE 'utf8mb4_unicode_ci';」
二、超過一個月以上的觀看紀錄
- 打開 chrome
- 打開「開發人員工具」
- 網址列貼上「https://www.youtube.com/feed/history」,並按 Enter
- 將頁面右側拉把向下拉到底,獲取更多的歷史記錄,但這些不會顯示在原始碼中。
- 在「開發人員工具」中,轉到「Network」或「網路」標籤頁。
- 在頁面上滾動以觀察新的網路請求。你應該能看到新的 XHR 或 Fetch 請求被發送。
- 找出 …browse?key=… (https://www.youtube.com/youtubei/v1/browse?key=…&prettyPrint=false) 的回應,並複製回應內容。
- 執行 2YTpreTidy2.php 將其塞入 YTpreTidy 資料表,且已有的片子不會重複塞入資料表。
三、以 ID 取得更多訊息
若已解析過 history ,本步驟可省略,因為所有重要資訊在解析 history 時已取得。
(一)縮圖的預設位置
- 120×90 :https://i.ytimg.com/vi/{VIDEO_ID}/default.jpg
- 320×180 :https://i.ytimg.com/vi/{VIDEO_ID}/mqdefault.jpg
- 480×360 :https://i.ytimg.com/vi/{VIDEO_ID}/hqdefault.jpg
- 640×480 :https://i.ytimg.com/vi/{VIDEO_ID}/sddefault.jpg
- 1280×720 :https://i.ytimg.com/vi/{VIDEO_ID}/maxresdefault.jpg
(二)以 oembed(嵌入) 取得
https://www.youtube.com/oembed?format=json&url=https://www.youtube.com/watch?v=jjT1iKZZYes
- title: "為什麼我們急需一組星鏈?低軌衛星的上網速度真的夠快嗎?"(解析 history 時已取得)
- author_name: "PanSci 泛科學"(解析 history 時已取得)
- author_url: "https://www.youtube.com/@PanScitw"(解析 history 時已取得)
- type: "video"
- height: 113
- width: 200
- version: "1.0"
- provider_name: "YouTube"
- provider_url: "https://www.youtube.com/"
- thumbnail_height: 360
- thumbnail_width: 480
- thumbnail_url: "https://i.ytimg.com/vi/jjT1iKZZYes/hqdefault.jpg"
- html: '<iframe width="200" height="113" src="https://www.youtube.com/embed/jjT1iKZZYes?feature=oembed" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen title="為什麼我們急需一組星鏈?低軌衛星的上網速度真的夠快嗎?"></iframe>'
四、使用 YouTube Data API
(一)獲取 API 金鑰:
Google雲端平台 (Google Cloud Platform) 提供一系列 Google 雲端運算服務:
- 對執行 Google 搜尋提供基礎設施服務
- 對 YouTube 伺服器提供基礎設施服務
- 平台服務
- 無伺服器計算環境
除了提供管理工具外, Google 雲端平台還提供了一系列模組化雲服務,包括:
- 雲端運算
- 資料儲存
- 資料分析
- 機器學習
其進入點為:https://console.cloud.google.com/welcome?hl=zh-tw&project=你的專案名
- 擁有一個 Google Cloud Platform 帳戶:
- 進入 https://cloud.google.com/
- 用既有的 google 帳號登錄
- 啟動免費試用:
GCP 通常會提供免費試用期,這可能包括一定的信用額度,讓你可以在不產生費用的情況下試用他們的服務。
點擊“開始免費試用”或類似的按鈕開始註冊過程。 - 提供必要的個人信息:註冊過程中,你將需要提供一些個人信息,包括你的姓名、聯繫信息、國家/地區等。
- 提供付款信息:
即使是免費試用,GCP 也會要求你提供有效的信用卡信息。這是為了確保在免費試用結束後,如果你繼續使用服務,他們可以收取費用。
你的信用卡不會在免費試用期間被收費,除非你超出了免費使用額度。 - 同意服務條款:閱讀並同意 Google Cloud Platform 的服務條款。
- 啟動帳戶:完成以上步驟後,你的 GCP 帳戶就會被啟動,可以開始使用 Google Cloud 的各種服務。
- 專案項目:
- 在 Google Cloud Console 中創建一個新的項目。
- 目前丁丁的 gmail 帳號擁有兩個專案:
- jendoOrg:給振鐸用
- OMG123:不知道被誰啟動了 24 項服務,丁丁於 2024.2.9 用「https://console.cloud.google.com/welcome?hl=zh-tw&project=omg123-34b9d / IAM 與管理 / 左側選單 / 設定 / 上方選單 / 關閉」然後系統回覆「預定於 2024年3月10日後刪除」。
- 設定金鑰用限制:
- 「雲端平台 / 快速存取 / API 和服務」
- 「左側選單 / 憑證 / API 金鑰」其中有兩支 API 金鑰:
- YTapi :給取 youtube metadata 用,限四個 ip ,但可呼叫任何 API
- 114.32.220.42:信義的固定 ip
- 114.35.52.233:板橋的固定 ip
- 220.132.155.103:中和的固定 ip
- 36.231.xxx.xxx:信義區網內的浮動 ip
- 測發出請求電腦本身的 ip :ipchicken.com,ipleak.net
- API 金鑰 1:給 google map 用,限六個域名網址,可呼叫的已啟用 API
- YTapi :給取 youtube metadata 用,限四個 ip ,但可呼叫任何 API
- 在「左側選單 / 憑證 / 上方選單 / 建立憑證 / API 金鑰」可以再新增一支 API 金鑰。
- 啟用 YouTube Data API v3
- 「雲端平台 / 快速存取 / API 和服務」
- 「左側選單 / 已啟用的 API 和服務 / 中央區服務名稱列表 / YouTube Data API v3 / 啟用」
(二)使用 API 查詢影片資訊:查 part=參數一,參數二,…
https://www.googleapis.com/youtube/v3/videos?id={VIDEO_ID}&part=snippet,contentDetails,statistics&key={YOUR_API_KEY}
https://www.googleapis.com/youtube/v3/videos?id={YOUR_VIDEO_ID}&part=contentDetails&key={YOUR_API_KEY}
https://www.googleapis.com/youtube/v3/videos?id={VIDEO_ID}&part=snippet&key={YOUR_API_KEY}
{VIDEO_ID}放的是影片的識別 ID ,{YOUR_API_KEY}放的是合法的 API key 。
請求成功後,會收到一個 JSON 格式的回應(本段表述為 data )。
可用的 part 參數有 snippet,contentDetails,statistics … 等,分述如後:
- contentDetails:回應內含影片的時間長度(duration 屬性),格式為 ISO 8601 持續時間格式,如:PT15M33S 表示 15 分鐘 33 秒。(解析 history 時已取得)
- snippet(片段):data['items'][0]['snippet']['title'] 為影片標題(解析 history 時已取得);data['items'][0]['snippet']['publishedAt']為影片的上架日期,以 UTC 時間 ISO 8601 格式返回,如: 2023-01-02T15:04:05Z 。data['items'][0]['snippet']['description']為影片說明。
- statistics:提供影片的統計信息,如觀看次數、喜歡次數、討厭次數、評論數等。
- status:提供影片的狀態信息,如影片是否已公開、是否允許評論等。
- player:提供影片播放器的相關信息,通常是嵌入式播放器的 HTML 代碼。
- topicDetails:提供關於影片主題的信息,包括相關的 Freebase 主題 ID。
- recordingDetails:提供影片錄製的詳細信息,如錄製位置和錄製時間。
- fileDetails:提供影片檔案的詳細信息,這通常只對影片上傳者可用。
- processingDetails:提供影片處理的狀態信息。
- suggestions:提供有關影片的建議信息,比如建議如何改善影片質量。
- liveStreamingDetails:如果影片是直播,則提供直播的詳細信息,如開始和結束時間。
(三)免費使用配額
- YouTube Data API 的免費使用配額限制是每日 10,000 單位。
- 在太平洋時間午夜時重置。
- 不同的 API 請求會消耗不同數量的配額單位。如,一個簡單的 videos.list 請求(用於獲取影片資訊)可能會消耗幾個單位,而一個複雜的請求(如上傳影片)則可能會消耗更多單位。
- 查看 YouTube Data API v3 使用情形
- 「雲端平台 / 快速存取 / API 和服務」
- 「左側選單 / 已啟用的 API 和服務 / 中央區服務名稱列表 / 點擊 YouTube Data API v3」中央區第二層:
- 指標:「選取圖表」核取選單中有九種圖表可以複選
- 配額與系統限制:可以核取配額種類,然後選「編輯配額」
- 憑證:會列出「與這個 API 相容的憑證」,如:YTapi 、 API 金鑰 1
五、使用 ytexplore.com
可使用影片ID、頻道ID、播放清單ID,查出該對象的進一步細節;也可以比較兩個同等級的對象。
六、使用 chrome 外掛(成效不佳)
- 外掛名:無限制的YouTube視頻摘要生成器 - ChatGPT / Unlimited Summary Generator for YouTube
- 外掛設定:「從擴充功能中選擇該外掛 / 詳細資料 / 擴充功能選項 / AI Provider / OpenAI API / gpt-3.5-turbo / API key(由 open AI 產生) / Save」
- 前提:該影片須有字幕,該外掛是利用字幕形成摘要的
- 使用:進入某一影片的播放畫面,點擊「
Transcript & Summary」:
- Transcript:抄自字幕的記錄副本
- Summary:AI 做的摘要
七、影片牆程式參考範例
DS218 /ggp/browseWPND.php
其他
將 youtube 影片加入 播放清單
- 以頻道主的身份登入 youtube
- 按最左側「播放清單」圖示(漢堡+向右三角形)
- 選某一組「播放清單」
- 按「…」圖示,並選「新增影片」
- 貼上影片連結,並按下「新增影片」按鈕
取得youtube內建的影片縮圖
- 觀看影片:https://www.youtube.com/watch?v=影片ID
- 取影片縮圖:
- 480*360:http://img.youtube.com/vi/影片ID/0.jpg
- 120*90(開始小縮圖):http://img.youtube.com/vi/影片ID/1.jpg
- 120*90(中間小縮圖):http://img.youtube.com/vi/影片ID/2.jpg
- 120*90(結尾小縮圖):http://img.youtube.com/vi/影片ID/3.jpg
- 120*90(影片小縮圖):http://img.youtube.com/vi/影片ID/default.jpg
- 320*180(縮圖沒黑邊):http://img.youtube.com/vi/影片ID/mqdefault.jpg
- 640*480:http://img.youtube.com/vi/影片ID/sddefault.jpg
- 1280*720:http://img.youtube.com/vi/影片ID/maxresdefault.jpg
- php取圖範例:
$youtubeimg=substr($網片網址,-11); // 取影片ID echo "<a title='前往觀看影片' href='$網片網址'><img src='http://img.youtube.com/vi/".$youtubeimg."/sddefault.jpg'></a>";
下載 youtube 影片
下載高清畫質影片
- 4K Video Downloader 免費版,丁丁有買付費版,註冊不受版本更新影響。
- 目前主售已為「4K Video Downloader Plus」丁丁未買付費版
- VideoHunter 月租版或年租版
下載 youtube 字幕
線上連結
- downsub.com
- 在影片網址列最前面加「subtitle.to/」然後按 Enter ,如圖:
- 此頁會被導向「https://downsub.com/?url=影片網址」
- 調整右上角「LANGUAGE」(可省略)
- 單擊「下載」按鈕開始提取字幕。
- 選擇您要下載的字幕格式和語言,然後單擊下載按鈕。
- 在影片網址列最前面加「subtitle.to/」然後按 Enter ,如圖:
軟體
- yt-dlp 命令列軟體,最強大
已過時
線上連結
- Toolbxs 免費工具
- 線上下載器
- youtube 字幕下載
- 把影片的字幕下載來用,做筆記更輕鬆!
- 支援下載「自動翻譯」:用影片其它語言的字幕翻成中文字幕
- 有 TXT 文字檔與 SRT 兩種格式
- youtube 縮圖下載
- youtube 字幕下載
- 線上下載器
- Getting YouTube Subtitles
影片標題為中文時,下載、解壓縮後取得的字幕檔名可能會變亂碼
應用軟體
用 AI 解析 youtube 內容
- ✘ 無法直接觀看影片或取得其逐字稿,須先取得該影片的字幕
- ✔
- https://reccloud.com/tw/ 很強
- 免費配額:註冊可免費使用三天。可使用 3 次 YouTube 影片逐字功能,每次最多支援 20 分鐘的影片。
- 每週 US$12.90(約 NT$360),每週附 300 點數,適合短期或偶爾使用。
- 年會員:US$4/月(全年共 US$48,約 NT$1,392),含 3,000 點數/年
- 高階年會員:US$5.75/月(全年共約 US$69),應為升級版本,點數更高
- https://maestra.ai/zh (maestra 女高音歌手):上傳影片以 AI 辨識聲音生成字幕,提供時間戳、自動斷句並支援多語言。沒付錢只能看到一分鐘。
- 價格
- 點數:60點/12美元: 125+種語言的轉錄 60分鐘
- 點數:23美元/每月,每年付費, 125+種語言的轉錄 180分鐘/月
- 精簡:23美元/每月,每年付費, 125+種語言的轉錄 180分鐘/月
- 基本:39美元/每月,每年付費, 125+種語言的轉錄 360分鐘/月、AI 摘要、自定義 詞典、MaestraCloud 檔案共享
- 高級:79美元/每月,每年付費, 125+種語言的轉錄 900分鐘/月、AI 摘要、自定義 詞典、MaestraCloud 檔案共享、Maestra 團隊和集中計費、增加1名團隊成員、API 訪問、優先支援
- 企業: 定製定價、自定義開發、現場活動字幕、自定義 MSA SCORM 進出口...
- 價格
- TopMediai / iMyFone VoxBox / EasySub:這些工具也都提供自動字幕產生功能,支援將影片連結貼上即可產出中文字幕,格式包括 TXT、SRT 等。
- https://reccloud.com/tw/ 很強