Получить название из видео YouTube - PullRequest
27 голосов
/ 01 августа 2009

Я хочу извлечь Заголовок видео YouTube. Как я могу это сделать?

Спасибо.

Ответы [ 15 ]

1 голос
/ 18 марта 2017

Вот код вырезки и вставки для ColdFusion:

http://trycf.com/gist/f296d14e456a7c925d23a1282daa0b90

Он работает на CF9 (и, вероятно, более ранних версиях) с использованием YouTube API v3, для которого требуется ключ API.

Я оставил там несколько комментариев и ссылок, для тех, кто хочет копать глубже. Надеюсь, это кому-нибудь поможет.

0 голосов
/ 09 июля 2018

Аналогично Matej M, но проще:

import requests
from bs4 import BeautifulSoup


def get_video_name(id: str):
    """
    Return the name of the video as it appears on YouTube, given the video id.
    """
    r = requests.get(f'https://youtube.com/watch?v={id}')
    r.raise_for_status()
    soup = BeautifulSoup(r.content, "lxml")
    return soup.title.string


if __name__ == '__main__':
    js = get_video_name("RJqimlFcJsM")
    print('\n\n')
    print(js)
0 голосов
/ 31 октября 2017

JavaX теперь поставляется с этой функцией. Например, миниатюра и заголовок видео показаны в двух строках:

SS map = youtubeVideoInfo("https://www.youtube.com/watch?v=4If_vFZdFTk"));
showImage(map.get("title"), loadImage(map.get("thumbnail_url")));

Пример

0 голосов
/ 21 июня 2017

Попробуйте, я получаю название и URL каждого видео в плейлисте, вы можете изменить этот код в соответствии с вашими требованиями.

$Playlist = ((Invoke-WebRequest "https://www.youtube.com/watch?v=HKkRbc6W6NA&list=PLz9M61O0WZqSUvHzPHVVC4IcqA8qe5K3r&
index=1").Links | Where {$_.class -match "playlist-video"}).href
$Fname = ((Invoke-WebRequest "https://www.youtube.com/watch?v=HKkRbc6W6NA&list=PLz9M61O0WZqSUvHzPHVVC4IcqA8qe5K3r&ind
ex=1").Links | Where {$_.class -match "playlist-video"}).outerText
$FinalText=""
For($i=0;$i -lt $playlist.Length;$i++)
{
Write-Output("'"+($Fname[$i].split("|")[0]).split("|")[0]+"'+"+"https://www.youtube.com"+$Playlist[$i])
}
0 голосов
/ 16 февраля 2013

Если вы знакомы с Java, попробуйте анализатор Jsoup.

Document document = Jsoup.connect("http://www.youtube.com/ABDCEF").get();
document.title();
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...