Vimeo API:获取下载所有视频文件的链接列表



美好的一天。

我正在尝试从Vimeo帐户中获取所有视频文件(直接下载链接(的列表。

有没有办法在1 get请求中进行操作?好的,如果是api的限制,时间为100。

我有硬编码脚本,我在其中提出12个获取请求(根据文档,请求限制了100个结果(,然后提出超过1000个请求以接收直接链接。

是否有一种方法可以接收一个链接列表,用于从vimeo下载带有一个API请求的vimeo?

ps帐户是pro

import vimeo
import json
import config #token is here
client = vimeo.VimeoClient(
    token = config.token
)
per_page = 100
answerDataAll = []
for i in range(12):
    page=i+1
    getString = 'https://api.vimeo.com/me/videos?per_page='+str(per_page) + '&page=' + str(page)
    dataFromServer = client.get(getString).json()['data']
    answerDataAll.extend(dataFromServer)    
# creating list of videos
listOfItems = []
for item in answerDataAll:
    listOfItems.append( item ['uri'])
# creating list of direct links, it is the goal
listOfUrls = []
for item in listOfItems:
    # isolating digits
    videoID = ""
    for sign in item:
        if sign.isdigit():
            videoID = videoID + sign 
    requestForDownloading = client.get ('http://player.vimeo.com/video/' + videoID + '/config').json()['request']['files']['progressive']
    for itm in requestForDownloading:
        if itm['width']==640:
            urlForDownloading = itm['url']
            listOfUrls.append(urlForDownloading)

您每个请求最多可以获得100个视频,但请理解,这样的请求/我/视频将返回每个视频的完整元数据,这是很多数据可以解析的数据通过。当Vimeo的服务器试图渲染您的请求时,API或您的客户端也可能超时。

您应该使用字段参数,以便仅返回您需要的下载元数据。您还应该指定排序和方向,因此您知道要返回视频。

https://api.vimeo.com/me/videos?fields=uri,name,download&page=1&per_page=100&sort=date&direction=desc

在此处找到这些参数的文档:

https://developer.vimeo.com/api/common-formats#json-filter

https://developer.vimeo.com/api/common-formats#using-the-pagination-parameter

https://developer.vimeo.com/api/common-formats#using-the-sort-parameters

最新更新