好的,所以我想使用谷歌api进行图像搜索,我知道这是不推荐的,但我不想使用自定义搜索
这是我一直在使用的代码
<script type="text/javascript">
google.load('search', '1');
var imageSearch;
function addPaginationLinks() {
// To paginate search results, use the cursor function.
var cursor = imageSearch.cursor;
var curPage = cursor.currentPageIndex; // check what page the app is on
var pagesDiv = document.createElement('div');
for (var i = 0; i < cursor.pages.length; i++) {
var page = cursor.pages[i];
if (curPage == i) {
// If we are on the current page, then don't make a link.
var label = document.createTextNode(' ' + page.label + ' ');
pagesDiv.appendChild(label);
} else {
// Create links to other pages using gotoPage() on the searcher.
var link = document.createElement('a');
link.href="/image-search/v1/javascript:imageSearch.gotoPage("+i+');';
link.innerHTML = page.label;
link.style.marginRight = '2px';
pagesDiv.appendChild(link);
}
}
var contentDiv = document.getElementById('content');
contentDiv.appendChild(pagesDiv);
}
function searchComplete() {
// Check that we got results
if (imageSearch.results && imageSearch.results.length > 0) {
// Grab our content div, clear it.
var contentDiv = document.getElementById('content');
contentDiv.innerHTML = '';
// Loop through our results, printing them to the page.
var results = imageSearch.results;
for (var i = 0; i < results.length; i++) {
// For each result write it's title and image to the screen
var result = results[i];
var imgContainer = document.createElement('div');
var title = document.createElement('div');
// We use titleNoFormatting so that no HTML tags are left in the
// title
title.innerHTML = result.titleNoFormatting;
var newImg = document.createElement('img');
// There is also a result.url property which has the escaped version
newImg.src="/image-search/v1/result.tbUrl;"
imgContainer.appendChild(title);
imgContainer.appendChild(newImg);
// Put our title + image in the content
contentDiv.appendChild(imgContainer);
}
// Now add links to additional pages of search results.
addPaginationLinks(imageSearch);
}
}
function OnLoad() {
// Create an Image Search instance.
imageSearch = new google.search.ImageSearch();
// Set searchComplete as the callback function when a search is
// complete. The imageSearch object will have results in it.
imageSearch.setSearchCompleteCallback(this, searchComplete, null);
// Find me a beautiful car.
imageSearch.execute("Ferrari");
// Include the required Google branding
google.search.Search.getBranding('branding');
}
google.setOnLoadCallback(OnLoad);
</script>
问题是,当我运行它时,图像不会出现
我知道问题是它使用的url不起作用
问题是的这行代码
newImg.src="/image-search/v1/result.tbUrl;"
但我不知道是否还有其他网址我可以使用,或者我可以做什么
我不能使用JQuery,这是一个大学项目,我们也不能使用JQuery
谢谢你的光临!
自2011年5月26日起,Google Image Search API已被正式弃用,显然已完全停止。
GimageSearch上的XHR调用返回callback google.search.ImageSearch.RawCompletion('1', null, 403, 'This API is no longer available.', 200)
您必须使用新的定制搜索API:https://developers.google.com/custom-search/
更改
link.href="/image-search/v1/javascript:imageSearch.gotoPage("+i+');';
至
link.href="javascript:imageSearch.gotoPage("+i+');';
并更改
newImg.src="/image-search/v1/result.tbUrl;"
至
newImg.src=result.tbUrl;