是否有可能在您自己的扩展程序中使用实时自动填充谷歌搜索?因此,用户通过JSON或任何其他方便的格式提供输入更改,以触发谷歌搜索结果。
我想可能会使用对google.com/?q=
的AJAX调用进行劫持,并进一步解析HTML结果,但这似乎不是很明确的技术。
我还检查过Google chrome API index但未找到相关项目。
答案 0 :(得分:-2)
这不在官方文档中,但是在其他扩展代码中挖掘,表明可以通过使用JSONP requests到https://suggestqueries.google.com/
网址来实现。
以下是使用jQueryUI autocomplete widget宽度进一步重定向到Google搜索结果的示例代码:
$("#googleSearch").autocomplete({
source: function(request, response) {
$.ajax({
url: "https://suggestqueries.google.com/complete/search?client=chrome&q=",
dataType: "jsonp",
data: {
q: request.term
},
success: function(data) {
response(data[2].splice(0, 15));
}
});
},
minLength: 1,
select: function(event, ui) {
var value = ui.item.label;
if (ui.item.label.indexOf("http://") === -1 && ui.item.label.indexOf("https://") === -1) {
value = "http://google.com/search?q=" + value
}
document.location = value;
}
});
如果使用此方法,则以下CSP必须位于manifest.json
:
"content_security_policy": "script-src 'self' 'unsafe-eval' https://suggestqueries.google.com/complete/ https://ajax.googleapis.com/ajax/services/feed/ https://*.googleapis.com/ https://www.google.com/; object-src 'self'",