1

YouTube API の Python バージョンを使用して、次の URL を使用して YouTubeVideoFeed オブジェクトを取得しています。

http://gdata.youtube.com/feeds/api/users/USERNAME/uploads

注: USERNAME をフォローする必要があるアカウントに置き換えました。

これまでのところ、フィードの取得、エントリの繰り返し、プレーヤーの URL、タイトル、およびサムネイルの取得はすべて簡単です。しかし今、ページに「Visit Channel」リンクを追加したいと考えています。フィードからチャンネル (この場合は、ユーザーの既定のチャンネル) の "パブリック" URL を取得する方法がわかりません。私が知る限り、フィードに直接保存されている唯一の URLは、パブリック サイトhttp://gdata.youtube.com/はなく、 を指しています。

フィードに基づいてチャンネルにリンクするにはどうすればよいですか?

4

2 に答える 2

1

自分で URL を作成したい場合、youtube.com/user/USERNAME はかなり安全な方法ですが、必要なのはリンク rel='alternate' だと思います

フィードからリンク配列を取得し、反復して代替を見つけてから、href を取得する必要があります

何かのようなもの:

client = gdata.youtube.service.YouTubeService()

feed = client.GetYouTubeVideoFeed('http://gdata.youtube.com/feeds/api/users/username/uploads')

for link in feed.link:
  if link.rel == 'alternate':
    print link.href

出力:

http://www.youtube.com/profile_videos?user=ユーザー名

最も正しい方法は、ユーザー プロフィール フィードから「代替」リンクを取得することです。技術的には、上記の URL はメイン チャンネル ページではなく、アップロードされた動画に移動するためです。

feed = client.GetYouTubeUserEntry('http://gdata.youtube.com/feeds/api/users/username')

for link in feed.link:
  if link.rel == 'alternate':
    print link.href

出力: http://www.youtube.com/profile?user=username

于 2009-04-24T18:09:41.487 に答える
0

ユーザー名を混乱させる可能性があります...ユーザー名を使用すると、公開ページ http://gdata.youtube.com/feeds/api/users/drdredel/uploadsが表示 されます。Gmailのユーザー名とYouTubeのユーザー名には奇妙な違いがあります。 。それとも私はあなたの質問を誤解していますか?

于 2009-04-22T08:29:51.847 に答える