---------------------------------------搜索引擎JSONP接口---------------------------------------------javascript
提示:URL中的 #content# 爲搜索的 關鍵字java
谷歌(Google)web
http://suggestqueries.google.com/complete/search?client=youtube&q=#content#&jsonp=window.google.ac.h算法
callback:window.google.ac.hjson
window.google.ac.h(["關鍵字",[["關鍵字",0],["關鍵字 歌詞",0],["關鍵字參數",0],["關鍵字 lyrics",0],["關鍵字過濾",0],["關鍵字排名",0],["關鍵字查詢",0],["關鍵字提取算法",0],["關鍵字規劃師可經過如下哪一種方式幫助您製做新的搜索網絡廣告系列",0],["關鍵字優化",0]],{"k":1,"q":"uhaB8ZMjzJay-BACee_C0eVdUCA"}])
必應(Bing)api
http://api.bing.com/qsonhs.aspx?type=cb&q=#content#&cb=window.bing.sug跨域
callback:window.bing.sug數組
if(typeof window.bing.sug == 'function') window.bing.sug({"AS":{"Query":"關鍵字","FullResults":0}} /* pageview_candidate */);
百度(Baidu)服務器
http://suggestion.baidu.com/su?wd=#content#&cb=window.baidu.sug網絡
callback:window.baidu.sug
window.baidu.sug({q:"關鍵字",p:false,s:["關鍵字搜索排名","關鍵字怎麼優化","關鍵字查詢工具","關鍵字推廣","關鍵詞優化","關鍵詞排名","關鍵字 英文","關鍵詞挖掘","關鍵詞查詢","關鍵詞搜索"]});
好搜(So)
callback:window.so.sug
window.so.sug({"query":"關鍵字","result":[{"word":"關鍵字查詢"},{"word":"關鍵字工具"},{"word":"關鍵字查詢工具"},{"word":"關鍵字挖掘"},{"word":"關鍵字搜索"},{"word":"關鍵字英文"},{"word":"關鍵字是什麼"},{"word":"關鍵字廣告"},{"word":"關鍵字分析"},{"word":"關鍵字規劃師"}],"version":"b","rec":""});
搜狗(Sogou)
https://www.sogou.com/suggnew/ajajjson?type=web&key=#content#
callback:window.sogou.sug
window.sogou.sug(["關鍵字",["關鍵字查詢","關鍵字搜索","關鍵字優化","關鍵字規劃師","關鍵字查詢lol","關鍵字是什麼意思","關鍵字搜索工具","關鍵字廣告圖片","關鍵字排名查詢","關鍵字生成器"],["0;0;0;0","1;0;0;0","2;0;0;0","3;0;0;0","4;0;0;0","5;0;0;0","6;0;0;0","7;0;0;0","8;0;0;0","9;0;0;0"],["","","","","","","","","",""],["0"],"","suglabId_1"],-1);
淘寶(Taobao)
https://suggest.taobao.com/sug?code=utf-8&q=#content#&callback=window.taobao.sug
callback:window.taobao.sug
window.taobao.sug({"result":[["關鍵字推廣","204"],["關鍵字seo","198"],["關鍵字 網站","182"],["關鍵字搜索","119"],["關鍵字軟件","44"],["關鍵字首頁","50"],["關鍵字收錄","35"],["關鍵字採集","16"],["關鍵字採集器","10"],["網站關鍵字","180"]]})
---------------------------------------搜索建議使用方式---------------------------------------------
以百度爲例,API返回的是JSONP數據,JSONP是跨域訪問的一種方式。因爲服務器返回的JavaScript代碼能夠直接引用,經過回調函數的方式就能夠間接的獲取服務器的數據。
下面是一個回調搜索建議的例子,window.baidu.sug 返回的是一個json對象
<script type="text/javascript"> window.onload = function() { //組裝查詢地址 var sugurl = "http://suggestion.baidu.com/su?wd=#content#&cb=window.baidu.sug"; var content = "關鍵字"; sugurl = sugurl.replace("#content#", content); //定義回調函數 window.baidu = { sug: function(json) { console.log(json) } } //動態添加JS腳本 var script = document.createElement("script"); script.src = sugurl; document.getElementsByTagName("head")[0].appendChild(script); } </script>
控制檯打印的結果:若是要將結果保存在一個字符串數組中,只須要 var arr = json.s 便可。