目前,我正在使用数据API协议获取YouTube视频的信息 访问此URL会显示我需要的信息,但是对于执行十几个查询来说它太慢了。获得24个视频大约需要10秒钟。
有没有办法在1个请求或其他方法中发送多个查询 更快地获取信息?现在我只是用它来获得收视率。
https://gdata.youtube.com/feeds/api/videos/[video id]
编辑:此时我通过php使用get_file_contents()获取它。 是否有比这更快的页面下载功能?
答案 0 :(得分:4)
冒着被投票的风险:我只是发送没有评级的整个页面,并使用ajax / jquery在页面完全加载时添加评级。然后,速度将取决于访问者的互联网连接和浏览器(同时请求的数量)。
顺便说一下,我知道这不是最佳解决方案;这是基于其他两个解决方案被拒绝的事实......
答案 1 :(得分:3)
除非是API或您提供的Feed指定的功能,否则无法在单个请求中获取多个网址。如果youtube的API不允许您在单个请求中提取多个项目,那么为了提高性能,您应该考虑预加载和缓存这些URL。
如果你事先知道你需要评级的项目然后设置一个cronjob来预先将它们拉出来然后将它们缓存在某种持久性数据库中。
答案 2 :(得分:2)
立即拨打所有卷曲电话:
假设您有10个视频ID:
kcvq0RcBkOE
OYpwAtnywTk
EvHwh9O9Tsg
......等等
将它们与url中的花括号连接起来,如下所示:
curl http://gdata.youtube.com/feeds/api/videos/{kcvq0RcBkOE,OYpwAtnywTk,EvHwh9O9Tsg}