You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用Python通过URL获取YouTube视频标题

通过URL获取YouTube视频标题的可行方法

方法1:使用YouTube Data API

  • 核心思路:利用官方API获取视频元数据,稳定可靠
  • 操作步骤:
    1. 登录Google Cloud平台,创建新项目并启用YouTube Data API v3,生成专属API密钥
    2. 从视频URL中提取视频ID(支持https://www.youtube.com/watch?v=xxx或https://youtu.be/xxx格式)
    3. 调用API的videos.list接口获取标题
  • Python代码示例:
import requests

def get_youtube_title(api_key, video_url):
    # 提取视频ID
    video_id = None
    if 'watch?v=' in video_url:
        video_id = video_url.split('watch?v=')[1].split('&')[0]
    elif 'youtu.be/' in video_url:
        video_id = video_url.split('youtu.be/')[1].split('?')[0]
    if not video_id:
        return "无法提取视频ID"
    
    # 调用API
    api_endpoint = f"https://www.googleapis.com/youtube/v3/videos?part=snippet&id={video_id}&key={api_key}"
    response = requests.get(api_endpoint)
    data = response.json()
    
    if data.get('items'):
        return data['items'][0]['snippet']['title']
    return "未找到视频信息"

# 使用示例
your_api_key = "替换为你的API密钥"
target_url = "https://www.youtube.com/watch?v=example_video_id"
print(get_youtube_title(your_api_key, target_url))
  • 注意:API有免费调用配额,小量使用完全足够;若需大量调用,需关注配额限制。

方法2:网页解析(适合临时小量使用)

  • 核心思路:模拟浏览器请求视频页面,解析HTML提取标题
  • Python代码示例(使用BeautifulSoup):
import requests
from bs4 import BeautifulSoup

def get_youtube_title_web(video_url):
    # 模拟浏览器请求头,避免被拦截
    headers = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36'
    }
    try:
        response = requests.get(video_url, headers=headers, timeout=10)
        response.raise_for_status()
        soup = BeautifulSoup(response.text, 'html.parser')
        # YouTube标题在<title>标签中,格式为「标题 - YouTube」
        title_text = soup.title.text.strip()
        return title_text.replace(' - YouTube', '')
    except Exception as e:
        return f"请求失败:{str(e)}"

# 使用示例
target_url = "https://www.youtube.com/watch?v=example_video_id"
print(get_youtube_title_web(target_url))
  • 注意:YouTube有反爬机制,频繁调用可能导致IP被临时封禁,仅适合偶尔使用。

方法3:使用yt-dlp命令行工具

  • 核心思路:借助成熟的第三方工具,自动处理反爬和格式解析
  • 操作步骤:
    1. 安装yt-dlp:pip install yt-dlp
    2. 执行命令获取标题:
      yt-dlp --get-title "https://www.youtube.com/watch?v=example_video_id"
      
  • 说明:yt-dlp支持批量处理多个URL,还能获取视频其他元数据,适合批量操作场景。

内容的提问来源于stack exchange,提问作者Nasir ahmad Ahmady

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.12 02:41:57