分類
標籤
.env AI AI 平台 Arm Astro BigQuery btop Certbot Chrome CICD Cookie Coolify CORS CSS cURL DataTables defineExpose DevOps Dify Fetch API Gamania GitLab Google Calendar Google Cloud Summit Google Tag Manager GSAP HTML iCal inject JavaScript Laravel Less LINE Llama 3 Masonry Meta Nginx Nginx UI No-code O(log n) Ollama OpenSSL Oracle PHP Pinia Pixel provide Proxyman Raycast requestAnimationFrame script setup Server Session Sitemap Socialite SSL UI元件 Valet Vertex AI Vite Vue 2 Vue 3 Vue3 Vuex Webpack Yahoo Calendar Zeabur 二分搜尋 使用者體驗 元件溝通 前端開發 動畫效果 峰值體驗 廣告 性能優化 打包 拖曳功能 推薦系統 搜尋 效率工具 時間複雜度 演算法 瀑布流排版 父子元件 版面配置 狀態管理 環境變數 程式碼複製按鈕 系統監控 網站地圖 網頁開發 自動化部署 自架伺服器 螢幕刷新率 語言模型 資訊檢索 跨域請求 轉化率 開發工具 開發環境 陣列 電子商務
399 字
2 分鐘
YouTube 影片取得縮圖
YouTube 提供多種不同解析度的影片縮圖,只要替換網址中的影片 ID (xxxxxx) 即可取得。
縮圖網址格式
- 高解析度大圖 (1280 × 720)
http://img.youtube.com/vi/xxxxxx/maxresdefault.jpg
- 標準清晰圖 (640 × 480)
http://img.youtube.com/vi/xxxxxx/sddefault.jpg
- 高品質縮圖 (480 × 360)
https://img.youtube.com/vi/xxxxxx/hqdefault.jpg
- 播放器背景縮圖 (480 × 360)
http://img.youtube.com/vi/xxxxxx/0.jpg
- 影片開始畫面縮圖 (120 × 90)
http://img.youtube.com/vi/xxxxxx/1.jpg
- 影片中間片段縮圖 (120 × 90)
http://img.youtube.com/vi/xxxxxx/2.jpg
- 影片結束縮圖 (120 × 90)
http://img.youtube.com/vi/xxxxxx/3.jpg
使用方法:將網址中的 xxxxxx 替換為目標 YouTube 影片的 ID 即可。
EX:
YouTube 影片資訊擷取工具
以下是一個實用的 JavaScript 函數,能夠從 YouTube 一般影片或 Shorts 短片的 URL 中提取影片 ID、類型,並生成高解析度縮圖網址:
function getYouTubeInfo(url) {
// 定義正則表達式以匹配 YouTube URL 和 Shorts URL
const youtubeRegex = /^(?:https?:\/\/)?(?:www\.)?(?:youtu\.be\/|youtube\.com\/(?:embed\/|v\/|watch\?v=|watch\?.+&v=))((\w|-){11})(?:\S+)?$/;
const shortsRegex = /^(?:https?:\/\/)?(?:www\.)?(?:youtube\.com\/shorts\/)([\w-]{11})(?:\S+)?$/;
let videoId = null;
let type = null;
// 判斷是否為 Shorts 連結
let shortsMatch = url.match(shortsRegex);
if (shortsMatch) {
videoId = shortsMatch[1];
type = "shorts";
} else {
// 判斷是否為 YouTube 連結
let youtubeMatch = url.match(youtubeRegex);
if (youtubeMatch) {
videoId = youtubeMatch[1];
type = "youtube";
}
}
// 如果不是有效的 YouTube 或 Shorts 連結,返回 false
if (!videoId) {
return false;
}
// 組合封面圖片網址
const thumbnailUrl = `http://img.youtube.com/vi/${videoId}/maxresdefault.jpg`;
return {
id: videoId,
type: type,
thumbnail: thumbnailUrl,
};
}
// 測試範例
console.log(getYouTubeInfo("https://www.youtube.com/watch?v=dQw4w9WgXcQ"));
// 輸出: { id: "dQw4w9WgXcQ", type: "youtube", thumbnail: "http://img.youtube.com/vi/dQw4w9WgXcQ/maxresdefault.jpg" }
console.log(getYouTubeInfo("https://youtu.be/dQw4w9WgXcQ"));
// 輸出: { id: "dQw4w9WgXcQ", type: "youtube", thumbnail: "http://img.youtube.com/vi/dQw4w9WgXcQ/maxresdefault.jpg" }
console.log(getYouTubeInfo("https://youtube.com/shorts/0dPkkQeRwTI?feature=share"));
// 輸出: { id: "0dPkkQeRwTI", type: "shorts", thumbnail: "http://img.youtube.com/vi/0dPkkQeRwTI/maxresdefault.jpg" }
console.log(getYouTubeInfo("https://www.example.com"));
// 輸出: false
這個函數不僅能識別標準的 YouTube 網址,還支援短連結和 YouTube Shorts 格式,十分適合需要處理 YouTube 內容的前端應用。
YouTube 影片取得縮圖
https://laplusda.com/posts/youtube-thumbnail-urls/