首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >从YouTube视频获取标题

从YouTube视频获取标题
EN

Stack Overflow用户
提问于 2009-08-01 07:05:00
回答 17查看 98.7K关注 0票数 39

我想提取YouTube视频的标题。我该怎么做呢?

谢谢。

EN

回答 17

Stack Overflow用户

发布于 2011-03-01 16:06:56

获取youtube video afaik信息的最简单方法是解析从以下位置检索到的字符串:http://youtube.com/get_video_info?video_id=XXXXXXXX

使用类似PHP的parse_str(),您可以获得关于视频的几乎所有内容的一个很好的数组:

代码语言:javascript
复制
$content = file_get_contents("http://youtube.com/get_video_info?video_id=".$id);
parse_str($content, $ytarr);
echo $ytarr['title'];

它将使用$id作为视频的id来打印视频的标题。

票数 70
EN

Stack Overflow用户

发布于 2018-10-05 19:02:48

python3中您好,我创建了2种方式

1)无接口密钥

代码语言:javascript
复制
import urllib.request
import json
import urllib
import pprint

#change to yours VideoID or change url inparams
VideoID = "SZj6rAYkYOg" 

params = {"format": "json", "url": "https://www.youtube.com/watch?v=%s" % VideoID}
url = "https://www.youtube.com/oembed"
query_string = urllib.parse.urlencode(params)
url = url + "?" + query_string

with urllib.request.urlopen(url) as response:
    response_text = response.read()
    data = json.loads(response_text.decode())
    pprint.pprint(data)
    print(data['title'])

示例结果:

代码语言:javascript
复制
{'author_name': 'Google Developers',
 'author_url': 'https://www.youtube.com/user/GoogleDevelopers',
 'height': 270,
 'html': '<iframe width="480" height="270" '
         'src="https://www.youtube.com/embed/SZj6rAYkYOg?feature=oembed" '
         'frameborder="0" allow="autoplay; encrypted-media" '
         'allowfullscreen></iframe>',
 'provider_name': 'YouTube',
 'provider_url': 'https://www.youtube.com/',
 'thumbnail_height': 360,
 'thumbnail_url': 'https://i.ytimg.com/vi/SZj6rAYkYOg/hqdefault.jpg',
 'thumbnail_width': 480,
 'title': 'Google I/O 101:  Google APIs: Getting Started Quickly',
 'type': 'video',
 'version': '1.0',
 'width': 480}
Google I/O 101:  Google APIs: Getting Started Quickly

2)使用Google API -必需的APIKEY

代码语言:javascript
复制
import urllib.request
import json
import urllib
import pprint

APIKEY = "YOUR_GOOGLE_APIKEY"
VideoID = "YOUR_VIDEO_ID"

params = {'id': VideoID, 'key': APIKEY,
          'fields': 'items(id,snippet(channelId,title,categoryId),statistics)',
          'part': 'snippet,statistics'}

url = 'https://www.googleapis.com/youtube/v3/videos'

query_string = urllib.parse.urlencode(params)
url = url + "?" + query_string

with urllib.request.urlopen(url) as response:
    response_text = response.read()
    data = json.loads(response_text.decode())
    pprint.pprint(data)
    print("TITLE: %s " % data['items'][0]['snippet']['title'])

示例结果:

代码语言:javascript
复制
{'items': [{'id': 'SZj6rAYkYOg',
            'snippet': {'categoryId': '28',
                        'channelId': 'UC_x5XG1OV2P6uZZ5FSM9Ttw',
                        'title': 'Google I/O 101:  Google APIs: Getting '
                                 'Started Quickly'},
            'statistics': {'commentCount': '36',
                           'dislikeCount': '20',
                           'favoriteCount': '0',
                           'likeCount': '418',
                           'viewCount': '65783'}}]}
TITLE: Google I/O 101:  Google APIs: Getting Started Quickly
票数 11
EN

Stack Overflow用户

发布于 2009-08-01 07:21:56

一种方法是从youtube检索视频,如here所示

然后从youtube发送的atom提要中提取标题。示例提要显示为here

票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1216029

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档