Jas*_*son 23 json image google-api
我使用下面的谷歌API ajax来获取特定搜索词的图像.这是在WinForms应用程序中完成的.
以下链接似乎有效,但它只返回4个结果(通过JSON)
有谁知道如何更多地哄骗它?
http://ajax.googleapis.com/ajax/services/search/images?v=1.0&q=Apple+Cake
显然必须有另一个参数来请求更多或分页结果,但我似乎无法弄明白?谁知道?
rfo*_*rte 32
我认为唯一的方法是对webservice进行多次调用,指定'start'参数.
http://ajax.googleapis.com/ajax/services/search/images?v=1.0&q=Apple+Cake&start=4
Run Code Online (Sandbox Code Playgroud)
该start
参数是搜索结果中从0开始的索引.所以在这个例子中,它将返回图像4..7.
您还可以添加参数rsz=[1-8]
.默认值为4.这就是为什么每个请求获得4个结果的原因.这是一个链接:http:
//code.google.com/apis/imagesearch/v1/jsondevguide.html#basic_query
小智 13
您可以使用"&rsz = 8",请参阅下文......
http://ajax.googleapis.com/ajax/services/search/video?q=SpongeBob%20Full&v=1.0&start=8&rsz=8
小智 5
对于那些想知道如何做到这一点的人,有很多方法.一种是基于某个事件运行循环查询.所以,比如...
var biebresults = [], start = 0;
function getBieb(startNumber){
$.getJSON("https://ajax.googleapis.com/ajax/services/search/images?v=1.0&q=Justin%20Bieber&start="+startNumber+"&callback=?", function(results){
biebresults.push(results.responseData.results);
if(biebresults.length < 538){
start = start + 4;
getBieb(start);
} else {
// Do something with your billion bieb images.
}
});
}
getBieb(start);
Run Code Online (Sandbox Code Playgroud)
这个特殊的代码(使用jQuery,顺便说一句)将会抓住你最喜欢的流行歌星的前四个图像.从这里计算结果的数量,如果它不够,它将再次运行getBieb,除了这次startNumber参数增加.
归档时间: |
|
查看次数: |
36593 次 |
最近记录: |