2017-12-04 18 views
0

Vimeoの特定のタグを使って自分のビデオに関する情報を取得しようとしています。 APIを読んだことがありますが、特定のタグを含む動画のリクエストについては何も見つかりません。パブリックビデオのタグ検索だけを提供し、自分のビデオのすべての機能を取得します。ですから、私に残す唯一の選択肢は、すべての動画を要求してから、関連するデータの辞書を検索することです。リストの辞書から関連データを取得

ただし、Vimeoでは一度に100本の動画をリクエストできます。アカウントには10​​0以上の動画があるので、すべての動画を取得するための辞書のリストを作成する必要があります。これは私が話している辞書の単純化されたリストです:

[{'data': [{'download': [{'created_time': '2017-11-30T15:01:44+00:00', 
         'expires': '2017-11-30T23:40:36+00:00', 
         'fps': 25, 
         'height': 360, 
         'link': 'https://player.vimeo.com/play/884123433?s=245200119_1512117636_a70a08b2710ec2c731c9d39729895c76&loc=external&context=Vimeo%5CController%5CApi%5CResources%5CUser%5CVideosController.&download=1&filename=05%2BF1%2BClassic%2BRaces%2B1983.%2BMonaco%2BHighlights164.mp4', 
         'md5': 'f87ad14ecf73f27bc4fd2ff537f9cf9b', 
         'quality': 'sd', 
         'size': 128905331, 
         'type': 'video/mp4', 
         'width': 520}, 
        {'created_time': '2017-11-30T15:01:44+00:00', 
         'expires': '2017-11-30T23:40:36+00:00', 
         'fps': 50, 
         'height': 1080, 
         'link': 'https://player.vimeo.com/play/884123432?s=245200119_1512117636_ffaf6e2eb391b06cff5e534dfd026204&loc=external&context=Vimeo%5CController%5CApi%5CResources%5CUser%5CVideosController.&download=1&filename=05%2BF1%2BClassic%2BRaces%2B1983.%2BMonaco%2BHighlights169.mp4', 
         'md5': 'fe06de889adf38dceb92089427c4a0cc', 
         'quality': 'hd', 
         'size': 1072969191, 
         'type': 'video/mp4', 
         'width': 1560}, 
        {'created_time': '2017-11-30T15:01:44+00:00', 
         'expires': '2017-11-30T23:40:36+00:00', 
         'fps': 50, 
         'height': 720, 
         'link': 'https://player.vimeo.com/play/884123428?s=245200119_1512117636_4f7665421693d392a0e7caabb331c075&loc=external&context=Vimeo%5CController%5CApi%5CResources%5CUser%5CVideosController.&download=1&filename=05%2BF1%2BClassic%2BRaces%2B1983.%2BMonaco%2BHighlights174.mp4', 
         'md5': '6b62e4aaa044f8802f6ba30c29047b69', 
         'quality': 'hd', 
         'size': 562614988, 
         'type': 'video/mp4', 
         'width': 1040}, 
        {'created_time': '2017-11-30T15:01:44+00:00', 
         'expires': '2017-11-30T23:40:36+00:00', 
         'fps': 25, 
         'height': 540, 
         'link': 'https://player.vimeo.com/play/884123427?s=245200119_1512117636_a1718ab65d37637e0406c8ab099f8f50&loc=external&context=Vimeo%5CController%5CApi%5CResources%5CUser%5CVideosController.&download=1&filename=05%2BF1%2BClassic%2BRaces%2B1983.%2BMonaco%2BHighlights165.mp4', 
         'md5': '4d014ea00d0c8620869f5ad4c5b4e404', 
         'quality': 'sd', 
         'size': 364759333, 
         'type': 'video/mp4', 
         'width': 780}, 
        {'created_time': '2017-11-30T15:01:44+00:00', 
         'expires': '2017-11-30T23:40:36+00:00', 
         'fps': 25, 
         'height': 1080, 
         'link': 'https://player.vimeo.com/play/884123417?s=245200119_1512117636_9c7ad015a30585c3cedb9429ffd0c9f2&loc=external&context=Vimeo%5CController%5CApi%5CResources%5CUser%5CVideosController.&download=1&filename=05%2BF1%2BClassic%2BRaces%2B1983.%2BMonaco%2BHighlights175.mp4', 
         'md5': 'd73682a6385154a83fe1653176bf17ab', 
         'quality': 'hd', 
         'size': 1071546729, 
         'type': 'video/mp4', 
         'width': 1560}, 
        {'created_time': '2017-11-30T14:51:00+00:00', 
         'expires': '2017-11-30T23:40:36+00:00', 
         'fps': 50, 
         'height': 1080, 
         'link': 'https://player.vimeo.com/play/884114225?s=245200119_1512117636_034586db598d6b398ecf86fe7bb50fb7&loc=external&context=Vimeo%5CController%5CApi%5CResources%5CUser%5CVideosController.&download=1&filename=05%2BF1%2BClassic%2BRaces%2B1983.%2BMonaco%2BHighlightssource.webm', 
         'md5': '76bcb8c1cd19b7ffa4d59f7961bb3076', 
         'quality': 'source', 
         'size': 1429585788, 
         'type': 'source', 
         'width': 1560}], 
     'tags': []}, 
    {'download': [{'created_time': '2017-11-25T18:13:28+00:00', 
         'expires': '2017-11-30T23:40:36+00:00', 
         'fps': 25, 
         'height': 540, 
         'link': 'https://player.vimeo.com/play/880414686?s=244460915_1512117636_e99e772d06f2be1f3e792e2eaf9649ab&loc=external&context=Vimeo%5CController%5CApi%5CResources%5CUser%5CVideosController.&download=1&filename=Formula1%2B2017%2BAbudhabi%2BQUalifying165.mp4', 
         'md5': '8e920c971257c4578ce9a23bcd532b2a', 
         'quality': 'sd', 
         'size': 1913433310, 
         'type': 'video/mp4', 
         'width': 960}, 
        {'created_time': '2017-11-25T18:13:28+00:00', 
         'expires': '2017-11-30T23:40:36+00:00', 
         'fps': 50, 
         'height': 720, 
         'link': 'https://player.vimeo.com/play/880414685?s=244460915_1512117636_219ce4f61b0c8169d06951488b07a242&loc=external&context=Vimeo%5CController%5CApi%5CResources%5CUser%5CVideosController.&download=1&filename=Formula1%2B2017%2BAbudhabi%2BQUalifying174.mp4', 
         'md5': 'c4a58556df95ca0ee2283793b6f099cb', 
         'quality': 'hd', 
         'size': 3090734703, 
         'type': 'video/mp4', 
         'width': 1280}, 
        {'created_time': '2017-11-25T18:13:28+00:00', 
         'expires': '2017-11-30T23:40:36+00:00', 
         'fps': 50, 
         'height': 1080, 
         'link': 'https://player.vimeo.com/play/880414684?s=244460915_1512117636_5ade2bfdffc7932dd0598bfff9f7ea58&loc=external&context=Vimeo%5CController%5CApi%5CResources%5CUser%5CVideosController.&download=1&filename=Formula1%2B2017%2BAbudhabi%2BQUalifying169.mp4', 
         'md5': '019552bae7ca1c71e5964c54dbdf8949', 
         'quality': 'hd', 
         'size': 5891693868, 
         'type': 'video/mp4', 
         'width': 1920}, 
        {'created_time': '2017-11-25T18:13:28+00:00', 
         'expires': '2017-11-30T23:40:36+00:00', 
         'fps': 25, 
         'height': 360, 
         'link': 'https://player.vimeo.com/play/880414679?s=244460915_1512117636_4d1dc529cad10c2753b967987b3c6b06&loc=external&context=Vimeo%5CController%5CApi%5CResources%5CUser%5CVideosController.&download=1&filename=Formula1%2B2017%2BAbudhabi%2BQUalifying164.mp4', 
         'md5': '3daca0303792d0b7506b3247e7b6ee99', 
         'quality': 'sd', 
         'size': 719988849, 
         'type': 'video/mp4', 
         'width': 640}, 
        {'created_time': '2017-11-25T18:13:28+00:00', 
         'expires': '2017-11-30T23:40:36+00:00', 
         'fps': 25, 
         'height': 1080, 
         'link': 'https://player.vimeo.com/play/880414677?s=244460915_1512117636_49c3975dd10c202fddd9e4e3418a150d&loc=external&context=Vimeo%5CController%5CApi%5CResources%5CUser%5CVideosController.&download=1&filename=Formula1%2B2017%2BAbudhabi%2BQUalifying175.mp4', 
         'md5': 'f1f38a8aa8612d9fa1331410a3a153f1', 
         'quality': 'hd', 
         'size': 5883105557, 
         'type': 'video/mp4', 
         'width': 1920}, 
        {'created_time': '2017-11-25T18:11:34+00:00', 
         'expires': '2017-11-30T23:40:36+00:00', 
         'fps': 50, 
         'height': 1080, 
         'link': 'https://player.vimeo.com/play/880414164?s=244460915_1512117636_4a9ae40250b8d5f1ab803973cb4617cc&loc=external&context=Vimeo%5CController%5CApi%5CResources%5CUser%5CVideosController.&download=1&filename=Formula1%2B2017%2BAbudhabi%2BQUalifyingsource.', 
         'md5': '21425a206698038bc9e8114698a187e9', 
         'quality': 'source', 
         'size': 7026953324, 
         'type': 'source', 
         'width': 1920}], 
     'tags': [{'canonical': 'foo', 
        'metadata': {'connections': {'videos': {'options': ['GET'], 
                  'total': 109, 
                  'uri': '/tags/foo/videos'}}}, 
        'name': 'Foo', 
        'resource_key': '3b4ab793385a07c695ef0081210c8fd586e2d890', 
        'tag': 'Foo', 
        'uri': '/tags/foo'}, 
       {'canonical': '2017', 
        'metadata': {'connections': {'videos': {'options': ['GET'], 
                  'total': 158765, 
                  'uri': '/tags/2017/videos'}}}, 
        'name': '2017', 
        'resource_key': 'a5c9f20cc79135f49b431c20b779e7b93bd26415', 
        'tag': '2017', 
        'uri': '/tags/2017'}]}] 
},"second_dict"] 

私が欲しいもの:私はタグFooを含むすべての動画を見つけたい、そして'type': 'source'からダウンロードリンクを取得します。ですから、私は["data"]["download"]["link"]で終わりたいと思います。ここでは、'type':'source'です。

私はタグをチェックして、「フー」タグを含む動画だけでリストを作成するコードのビットを書いてみました:

videosFiltered = [] 
for entry in videos: 
    for subentry in entry["data"]: 
     if subentry["tags"] and subentry["tags"][0]["name"] == "Foo": 
      videosFiltered.append() 

しかし、あなたがするので、私は無残に失敗しています見ることができるように私はちょうどforループとifループの恐ろしい巣を書いています。私は最終的に私が欲しいものを手に入れることができると確信していますが、この問題に対するより洗練された解決策を見つけるのを助けてくれることを願っています。

答えて

1

/tags/:word/videosは、探しているリソースです。 /tags/foo/videosを押すと、「foo」タグを持つビデオのページ番号リストが返されます。

https://developer.vimeo.com/api/endpoints/tags#GET/tags/ {word}/videos

+0

これは公開ビデオのみを返しますか?私はタグを含む私自身のビデオを見つけようとしていますので、試しました: 'videosTotal = v.get( 'https://api.vimeo.com/me/tags/:word/videos').json() '、ここで' v'は認証部分です。 しかし、それは動作しません。これをAPIリクエストレベルで解決するのが最適な解決策です。 –

+0

ああ、あなたは間違っています、 '/ tags /:word/videos'はあなた自身のものではなく、公開された動画のためのものです。私たちは間違いなくその時点でエンドポイントを持っていないので、あなたのソリューションは間違いなく理想的ではありませんが、必要です。申し訳ありません:( –

+0

少しでも手助けができますか?適切なデータを取得したいのですが、ネストされたループを混乱させたくありません。 –

関連する問題