Google image search говорит, что api больше не доступен
Я использую Google image search API. До вчерашнего дня он работал, но сегодня утром он говорит: "этот API не доступен"
он официально закрыт, или любая ошибка на моей стороне
запрос
https://ajax.googleapis.com/ajax/services/search/images?v=1.0&rsz=8&q=cute+kittens
ответ
{"responseData": null, "responseDetails": "This API is no longer available.", "responseStatus": 403}
7 ответов:
ответ, который я нашел, был с помощью пользовательского API поисковой системы Google (CSE). Обратите внимание, что это не более 100 бесплатных запросов в день.
создания
cxи изменение его для поиска изображений
- создать пользовательскую поисковую систему в https://cse.google.com/cse/create/new на основе ваших критериев поиска.
- выберите сайты для поиска (оставьте это поле пустым, если вы хотите искать по всему интернету, в противном случае вы можете ввести сайт для поиска на одном конкретном сайте)
- введите имя и язык для поисковых систем.
- Нажмите кнопку "Создать."Теперь вы можете найти
cxв URL браузера.- в разделе "изменить поисковую систему" нажмите кнопку "Панель управления". В разделе " редактировать "вы найдете ярлык" поиск изображений " с кнопкой включения/выключения, измените его на ON. Нажмите кнопку "обновить", чтобы сохранить изменения.
проведение поиска с API
url конечной точки API-это
https://www.googleapis.com/customsearch/v1для этого API используются следующие параметры JSON:
q: задает текстом поискnum: задает количество результатов. Требуется целое значение от 1 до 10 (включительно)start: "смещение"для результатов, с которых должен начинаться поиск. Требуется целое значение от 1 до 101.imgSize: в размер изображения. Я использовал"medium"searchType: должно быть установлено значение"image"filetype: указывает тип файла изображения. Я использовал '"jpg", но вы можете оставить это, если расширение файла не имеет значения для вас.key: ключ API, полученный от https://console.developers.google.com/cx: пользовательский идентификатор поисковой системы из предыдущего разделапросто
GETзапрос передавая вышеуказанные параметры как JSON в конечную точку API (также перечисленную выше).Примечание: если вы установите список рефереров в настройках поисковой системы, посещение URL через браузер, скорее всего, не будет работать. Вам нужно будет сделать вызов AJAX (или эквивалент с другого языка) с сервера, указанного в этом списке. Это будет работать только для ссылок, которые были указаны в конфигурации настройки.
ссылка: https://developers.google.com/custom-search/json-api/v1/reference/cse/list
теперь вы можете искать изображения с помощью пользовательского API поиска изображений.
вы можете сделать это в два этапа:
1) Получить CUSTOM_SEARCH_ID
перейти к - https://cse.google.ru/cse/all
здесь вы должны создать новую поисковую систему. Сделайте это и включите поиск изображений там.
экран(я русский... извините)
затем получить этот идентификатор поисковой системы. Сделать это нажмите на кнопку Получить код:
и там найти строку с cx = "здесь будет ваш CUSTOM_SEARCH_ID":
ОК. Это сделано, теперь второй шаг:
2) получить SERVER_KEY
перейдите в консоль google -https://console.developers.google.com/project
Нажмите для создания проекта кнопку, Введите имя и другая необходимая информация. Выберите этот проект и перейдите к включению API
Теперь найдите пользовательскую поисковую систему.
теперь мы должны перейти к учетным данным и создать новый ключ сервера:
ОК. Теперь мы можем использовать поиск изображений.
запрос:
https://www.googleapis.com/customsearch/v1?key=SERVER_KEY&cx=CUSTOM_SEARCH_ID&q=flower&searchType=image&fileType=jpg&imgSize=xlarge&alt=jsonзаменить SERVER_KEY и CUSTOM_SEARCH_ID и вызовите этот запрос.
предел: бесплатно вы можете искать только 100 изображений в день. Спасибо за внимание.
Если это только для ваших собственных целей (не для производства), и вы не планируете злоупотреблять Google Image Search, вы можете просто извлечь первый URL-адрес изображения из результатов поиска Google с помощью JSOUP.
например: Код, чтобы получить URL-адрес изображения первых эскизов:
public static String FindImage(String question, String ua) { String finRes = ""; try { String googleUrl = "https://www.google.com/search?tbm=isch&q=" + question.replace(",", ""); Document doc1 = Jsoup.connect(googleUrl).userAgent(ua).timeout(10 * 1000).get(); Element media = doc1.select("[data-src]").first(); String finUrl = media.attr("abs:data-src"); finRes= "<a href=\"http://images.google.com/search?tbm=isch&q=" + question + "\"><img src=\"" + finUrl.replace(""", "") + "\" border=1/></a>"; } catch (Exception e) { System.out.println(e); } return finRes; }руководство:
question - Image search term
ua-пользовательский агент браузера
изменения в API URL-адрес Google Custom Image search
предоставьте те же параметры вместе с ключом API и CX.
The Yahoo Boss API является разумной заменой, хотя это не бесплатно и результаты не совсем так хорошо.
обновление: Yahoo BOSS JSON Search API прекратит работу 31 марта 2016 года
похоже, нам нужно реализовать Google custom search API https://developers.google.com/custom-search/ так говорится в верхней части страницы, которую вы предоставили себе








Comments