影片和字幕 · YouTube 縮圖下載器和元資料檢視器
如何從觀看、Shorts 和嵌入連結中提取 YouTube 影片 ID
· 工作原理
youtube 網址 解析
同一影片可以透過多種方式連結。這篇文章解釋了 YouTube 連結可以採用的形狀、工具如何找到每個連結內的 11 個字元的 ID 以及如何處理追蹤參數和時間戳記。
同一視頻,五個不同的連結 - 觀看頁面、短連結、Shorts、嵌入內容和手機地址
一個影片可以作為觀看 URL、youtu.be 分享、Shorts 路徑、嵌入位址、即時連結或行動主機連結到達。 ToolAcre 在考慮任何網路工作之前,會將每個受支援的形狀縮減為相同的 11 個字元 ID。因此,混合導入可以使用該 ID 作為其重複資料刪除金鑰,而不是將一個影片的六個連結視為六個記錄。
這種排序對於編輯者清理混合列表很有用:解析是頁面中確定性的字符串和 URL 工作,因此可以報告錯誤的域和僅播放列表的連結,而不會將粘貼的值洩漏到遠端解析器。集合 URL 未解析,因為它的存在和順序都無法辨識編輯者打算引用哪個成員。
ID 本身 — 64 符號字母表中的十一個字元以及為什麼它看起來是隨機的
可接受的 ID 形狀恰好是由大小寫字母、數字、連字符和底線組成的 11 個字元。這只是一個格式檢查;通過它並不能證明視頻存在或揭示字符的含義。將規則套用於解析的 v 值或路徑段可以避免從某些不相關的編碼參數中清除類似 ID 的子字串。
立即接受裸露的匹配 ID。較長的播放清單標識符使用單獨的保守模式,防止播放清單標記被默默地視為一個影片的密鑰。起始時間仍然伴隨引文資料:將 30 秒更改為 90 秒仍然指向相同的 11 個字元的視訊記錄。
使用 URL API 進行解析 — 讀取主機、路徑和查詢,無需僅使用正規表示式進行猜測
URL 建構子分隔協定、規範化主機、路徑段和查詢參數。這避免了一個巨大的正規表示式可能會意外地接受相似的域或將查詢值與路徑 ID 混淆。拒絕欺騙性主機比為嵌入不可信 URL 中的識別碼產生可信任縮圖更安全。
僅接受 HTTP 和 HTTPS,且前導 www 被規範化。允許名單涵蓋 YouTube、行動、音樂、遊戲、nocookie 和 youtu.be 主機,而不信任任何包含 youtube 一詞的主機名稱。遠端成功無法驗證解析錯誤的連結的來源,因為攻擊者可能故意在不相關的網域中包含真實的公共 ID。
每個形狀中隱藏的 ID — v 參數、youtu.be 上的路徑、/shorts/, /embed/ 和 /live/
觀看頁面使用 v 查詢參數,youtu.be 使用其第一個路徑段,shorts、embed 和 live 表單使用其前綴後的段。舊版 /v/ 和 /e/ 路徑也可以透過相同的嚴格形狀檢查來辨識。匹配的標識符僅允許本地處理,而不允許有關內容或所有權的宣告。
解析器另外讀取有效的播放清單 ID 和從 t 或 start 開始的偏移量。它將這些作為單獨的事實返回,以便它們可以通知產生的連結,而不會污染視頻標識符本身。網路邊界僅在這種區分完成後才開始,因此解析器測試可以離線執行。
忽略其餘部分 - 無法辨識影片的播放清單參數、開始時間和共享追蹤值
共享追蹤值、不相關的查詢參數和時間戳記無法辨識視訊。 ToolAcre 在提取 ID 後會忽略它們,而對於故意保留起始點的連結,支援的時間形式會標準化為整秒。因此,具有不同活動標籤的兩個連結可以解析為一個資產記錄,而無需將這些行銷參數攜帶到產生的 URL 中。
僅播放清單、頻道和搜尋頁面會收到可操作的拒絕,因為它們沒有命名一個影片。從這些頁面猜測 ID 會產生確定性,並可能取得錯誤記錄的資產。策展人必須先選擇單一項目;解析器不會悄悄地從集合中選擇第一個結果,而集合的順序稍後可能會改變。
工作範例:將十個貼上的連結規範化為其 ID — 其中兩個根本不是 YouTube 連結
實用的十個貼上批次可以包括手錶、短視頻、Shorts、嵌入、實時、移動和裸 ID 表單以及兩個不相關的域。前八個集中於 ID;不相關的主機在接受主機清單中本地失敗。因此,即使貢獻者從多個不同的 YouTube 介面複製連結,也可以透過 ID 對輸出進行重複資料刪除。
在該規範化期間沒有發生存在探測。形狀有效但不存在的 ID 到達稍後的獲取階段,其中縮圖和 oEmbed 響應提供獨立證據,而不是追溯更改解析器結果。這保留了「文字是有效標識符」和「Google 目前為其提供公共材料」之間的明確區別。
這不包括頻道、播放清單和搜尋 URL,其中不包含單一影片 ID
解析器不會將頻道、播放清單或搜尋結果解析為所選影片。它還無法繞過私有、已刪除或有年齡限制的訪問,因為提取公共標識符並不意味著授權檢索受保護的資料。拒絕不明確的集合 URL 可以防止目錄被最先出現在某人螢幕上的項目填滿。
一旦按下 Fetch,圖片探針可能會遇到 404、其他 HTTP 錯誤、200 佔位符或無法解碼的位元組。單獨的元資料可能會因傳輸、HTTP 拒絕或無效 JSON 而失敗,包括當阻止程式、代理程式或離線狀態幹擾時。這些結果屬於可用性報告;它們不應導致解析器將原始連結重新解釋為某些不同的影片。
重點:找到 ID,然後一切就隨之而來 - YouTube 縮圖下載器如何接受 YouTube 連結並記錄其支援的形狀
本地解析後,瀏覽器直接從 i.ytimg.com 請求每個 JPEG 候選者一張縮圖,並從 www.youtube.com 請求一張 oEmbed JSON 記錄。 oEmbed URL 包含規範的 watch URL 和 format=json。在「網路」面板中查看這些呼叫可確認標準化已完成,並相同的提取 ID 正在驅動資產和元資料請求。
這些匿名 GET 忽略憑證和引薦來源網址、使用無儲存、遵循重定向並繞過任何 ToolAcre 伺服器或代理程式。 Google 會看到請求和 Origin 標頭;註銷限制仍然適用於私人、已刪除和有年齡限制的影片。在按一下按鈕之前,可以使用代表性 URL 形狀離線測試解析器行為,因為不需要尋找來識別其元件。