我正在使用课程时代给出的开放式api。 问题是它只提供100个课程的列表,我在网站上查看了1294个课程列表。那么为什么它要求提供100个课程。
我的代码是
<?php
$url = "https://api.coursera.org/api/courses.v1";
$result = file_get_contents($url);
print_r($result);
?>
我该怎么做才能获取整个课程目录并将其存储在mysql db
中答案 0 :(得分:1)
来自他们的文档: https://building.coursera.org/app-platform/catalog/
要对结果集进行分页,请使用整数开始和限制查询 参数。
curl "https://api.coursera.org/api/courses.v1?start=300&limit=10"
所以只需使用start
和limit
进行分页
答案 1 :(得分:0)
API每次调用只返回100条记录。为了获得所有记录,您需要多次调用该方法并连接/存储所有响应。
响应返回以下值,可用于修改后续调用。
paging":{"next":"101","total":1948},"linked":{}}
然后可以相应地使用;
https://api.coursera.org/api/courses.v1?start=101
答案 2 :(得分:0)
来自文档:
curl&#34; https://api.coursera.org/api/courses.v1?start=300&limit=10&#34;
您将需要循环并增加开始,直到您不再获得任何结果。