我确实有一个 Hughe 数据库,其中一些数据集链接到某些 youtube 视频。众所周知,一些 youtube 视频会在一段时间后从 youtube 上消失,这导致了我的解决方案和我的问题 --> 我想通过简单地通过 JSON 检查是否有要检索的数据来检查 youtube 视频是否仍然存在从一个视频。如果不是,我会简单地删除该特定数据集。
因此,我的解决方案的第一部分是遍历数据表的每一行并检查每个 id 是否有要从 youtube 检索的数据,如下面的代码所示:
$result = $db->query("SELECT id, link FROM songs"); while($row = $result->fetch_assoc()) { $number = 1+$rown++; $id = $row['id']; $link = $row['link'];
$video_ID = $link;
$JSON = file_get_contents("https://gdata.youtube.com/feeds/api/videos/{$video_ID}?v=2&alt=json");
$JSON_Data = json_decode($JSON);
$views = $JSON_Data->{'entry'}->{'yt$statistics'}->{'viewCount'};
echo $number .' row<br />';
echo $link .' link<br />';
echo $views .' views<br /><br />';
}
这种尝试效果很好,并向我输出了我需要的数据。唯一的问题是,它只是从前 150-190 行中获取数据,仅此而已。现在我正在检查一个解决方案,检查每一行是否有空的 youtube 数据,这导致我有两个具体问题:
1st)由于从单个查询中检索数据的限制,youtube可能对此负责吗?
2nd)这可能是我的服务器问题,它在 x 秒后停止查询(但我已经通过在我的 php 代码中添加一行 set_time_limit (10000000); 来扩展时间限制但没有成功)?
希望能帮到你,先谢谢了。