【发布时间】:2013-11-30 18:24:39
【问题描述】:
我正在开发一个包含 YouTube 视频集合的 Wordpress 网站。当新视频被添加到网站时,它会使用 YouTube 的 API 将某些信息(视频的时长、喜欢的数量、观看次数等)提取到网站的数据库中。
问题是这些信息很快就会过时,所以我需要一种方法来定期刷新视频信息。
我原本打算每天晚上只使用 wp-cron 并循环浏览所有视频并更新它们,但我达到了 YouTube 拉取视频信息的速率限制 - 过了一会儿它只返回 403 Forbidden 错误。
有没有一种方法可以编写代码,例如,浏览前 50 个视频,等待 5 分钟,然后执行接下来的 50 个,直到它们全部更新?
【问题讨论】:
-
您是否正在寻找睡眠常规? ;-)
-
这会导致性能问题吗?我已经在 API 调用之间添加了 500 毫秒的睡眠时间的脚本,我不确定在处理视频块之间使用 5 分钟的睡眠时间是否是个好主意。
-
余说你要等 5 分钟让它休眠才能使用 ;-)。相反 - 只需更慢地查询 youtube - 在连续请求之间添加 100 毫秒的延迟等 - 类似的效果。根据您的系统,您可以使用调度程序或 cron 并定期运行您的脚本 - 一切都取决于...
-
我在请求之间已经有 500 毫秒的延迟,但我仍然很快达到了限制。我找不到 YouTube 的 API 限制的确切描述 - 文档基本上说,如果你没有做任何坏事,你就不会受到限制。
标签: php wordpress youtube-api