2013-05-27 2 views
5

Я ищу способ указать, что изображения, возвращаемые API пользовательского интерфейса Google, имеют квадратный формат.API Google Custom Search для квадратных изображений

Я пробовал tbs = iar: s (потому что я читал Using the Custom Search API (REST JSON) to search for square images), но он не работает.

У вас есть идея, пожалуйста?

ответ

9

Проблема заключается в том, что параметр запроса tbs применяется только к обычным поискам изображений в Google. Например, если вы хотите искать кошачьих фотографий с квадратным форматом кадра, вы могли бы сделать поиск, как это:

http://images.google.com/?q=cat&tbs=iar:s

Но Custom Search API использует совершенно другой набор параметров. Полный список поддерживаемых параметров показан в REST documentation.

Некоторые из запросов tbs имеют эквиваленты. Например:

  • tbs=ic:gray переводит к imgColorType=gray
  • tbs=isz:m переводит к imgSize=medium
  • tbs=itp:clipart переводит к imgType=clipart

Но, к сожалению, как представляется, нет эквивалента для коэффициента фильтра iar аспект. Я попытался угадать несколько запросов (например, imgAspectRatio=square) в случае наличия недокументированного параметра, но ему не повезло.

Лучшей альтернативой, которую я мог бы предложить, является использование imgSize=icon. Это имеет тенденцию возвращать изображения с квадратным соотношением сторон, но с неудачным побочным эффектом, что изображения также имеют тенденцию быть довольно небольшими (наибольший размер, который я видел, вернулся 256x256). Однако в зависимости от ваших потребностей это может быть достаточно хорошим.

Прошу прощения, если это не особенно полезно для вас. Я не просто пытаюсь захватить щедрость по этому вопросу, поэтому не стесняйтесь проголосовать за этот ответ. Я просто хотел сообщить вам, что я нашел, если это поможет.

+0

Благодарим вас за исследование. Мне также было интересно, есть ли недокументированный параметр, и именно поэтому я задал этот вопрос. Я не думал о 'imgSize = icon'. Это может быть полезно, если все изображения были больше 200x200, но большинство из них очень малы. – Arnaud