使用 PyVimeo 从 API 获取 Vimeo 文件名时遇到问题

Posted

技术标签:

【中文标题】使用 PyVimeo 从 API 获取 Vimeo 文件名时遇到问题【英文标题】:Trouble getting Vimeo filename from API using PyVimeo 【发布时间】:2022-01-01 06:04:12 【问题描述】:

我有一个使用 Python 和 PyVimeo 的脚本,我正在使用“GEThttps://api.vimeo.com/videos/video_id”来获取文件名。当我尝试运行我的应用程序时,我收到错误 'error': "The requested video couldn't be found."。但是,当我在 Try it out 部分 (https://developer.vimeo.com/api/reference/videos#get_video) 下使用相同的视频 ID 时,它可以正常工作。

我假设我的代码有问题,但如果我使用来自 github example (about_me = v.get('/me')) 的演示,它可以正常工作并且还需要身份验证。

我缺少一些简单的东西吗?非常感谢。

import vimeo

v = vimeo.VimeoClient(
token= 'VimeoToken',
key= 'VimeoKey',
secret= 'VimeoSecret'
)

class Vimeo:
def get_vimeo_data(video_file):
uri = 'https://api.vimeo.com/videos/video_file'
# uri = 'https://api.vimeo.com/me/videos' - This response works
response = v.get(uri)

data = response.json()
print(data)

Vimeo.get_vimeo_data(55555)

【问题讨论】:

【参考方案1】:

您忘记在 f 字符串前添加 f

class Vimeo:
    def get_vimeo_data(video_file):
        # THIS f
        uri = f"https://api.vimeo.com/videos/video_file"
        # uri = 'https://api.vimeo.com/me/videos' - This response works
        response = v.get(uri)

        data = response.json()
        print(data)

【讨论】:

非常感谢您的评论。我想我输入了 " 而不是 ' 。它应该看起来像这样。uri = 'https://api.vimeo.com/videos/video_file' @user3324136 如果我的回答解决了您的问题,请点击复选标记接受我的回答 :) 谢谢悉达多。我当然会给你投赞成票。然而,现在的问题是我没有尝试使用 F 字符串,而是使用 URI 从视频文件中获取 JSON。我更正了上面的代码以反映我正在尝试做的事情,并且(我的道歉)以某种方式意外地在其中放置了引号。 我很抱歉,悉达多。我没有完全阅读你的答案,它确实是正确的。再次感谢您的帮助。

以上是关于使用 PyVimeo 从 API 获取 Vimeo 文件名时遇到问题的主要内容,如果未能解决你的问题,请参考以下文章

从 vimeo 获取视频缩略图

Vimeo API v3:请求通过视频 ID 获取多个视频

从 Vimeo 获取 img 缩略图?

php 从Vimeo视频获取缩略图

C# 正则表达式通过 url 从 youtube 和 vimeo 获取视频 ID

使用Vimeo API进行视频控制