Возьмите фото Instagram на основе хэштегов

Я новичок в Instagram, и мне поручено запрограммировать приложение для загрузки фотографий Instagram на основе определенного хэштега. Это означает, что если приложение запущено и ищет хэштег "#awesomeevent", который загружает фотографию с этими хэштегами, она автоматически сохраняется в нашей базе данных.

Приложение должно работать примерно так же, как http://statigr.am/tag/ но вместо отображения фотографий оно должно сохранять фотографии в базе данных.

Каков процесс этого? Любые учебники, которые имеют это от начала до конца. Даже рассказ о том, как начать создавать приложение Instagram с нуля. любая помощь будет принята с благодарностью.

Спасибо

4 ответа

Разработчики часто упускают из виду положения и условия API. Я был там сам.

УСЛОВИЯ ИСПОЛЬЗОВАНИЯ API

Прежде чем вы начнете использовать API, у нас есть несколько рекомендаций, о которых мы хотели бы вам рассказать. Пожалуйста, не забудьте прочитать полные Условия использования API

Условия эксплуатации. Вот что вы прочтете:

  • Пользователи Instagram владеют своими изображениями. Вы несете ответственность за соблюдение этого права.

  • Вы не можете использовать имя Instagram в вашем приложении.

  • Вы не можете использовать Instagram API для сканирования или хранения изображений пользователей без их явного согласия.

  • Вы не можете повторить основной пользовательский опыт Instagram.com

  • Не злоупотребляйте API. Слишком много запросов слишком быстро отключат ваш доступ

Тем не менее, часть в терминах также утверждает, что:

  • Вы не должны кэшировать или хранить какие-либо фотографии пользователей Instagram, за исключением разумных периодов времени, для предоставления услуг, которые вы предоставляете пользователям Instagram.

Надеюсь, это начало, прежде чем вы на самом деле получите кодирование и хранение изображений.

Условия использования API: http://instagram.com/about/legal/terms/api/

API: http://instagram.com/developer/

Для начала посоветуйтесь с instagram api.

Что касается конкретного API, вам нужно это:

/tags/tag-name/media/recent

Например, если вы хотите искать изображения из тега #awesomeevent, вы будете делать запрос API для:

https://api.instagram.com/v1/tags/awesomeevent/media/recent?access_token=ACCESS-TOKEN

Я бы посмотрел на две библиотеки, которые предоставляет Instagram. Библиотека ruby ​​находится по адресу https://github.com/Instagram/instagram-ruby-gem а библиотека python - по адресу https://github.com/Instagram/python-instagram

Похоже, у них обоих есть примеры, с которых можно начать, если вы программируете с любой из библиотек.

Что касается проблемы хранения, могли бы вы вместо этого хранить URL-адрес изображений вместо самих изображений? API возвращает JSON-информацию, из которой возвращаются URL-адреса изображений.

Надеюсь, это поможет.

Вы можете использовать приведенный ниже скрипт ruby, чтобы получить изображения и сохранить их в файл. Затем вы можете либо ссылаться на файл в базе данных, либо заменить последний блок кодом для вашей конкретной реализации базы данных. Не зная вашего типа базы данных и схемы, никто не может сказать вам, как что-то добавить к ней.

require "instagram"
require "restclient"

Instagram.configure do |config|
  config.client_id = INSTAGRAM_CLIENT_ID 
  config.client_secret = INSTAGRAM_CLIENT_SECRET
end

instagram_client = Instagram.client(:access_token => INSTAGRAM_ACCESS_TOKEN)
tags = instagram_client.tag_search('cat')
urls = Array.new

for media_item in instagram_client.tag_recent_media(tags[0].name)
  urls << media_item.images.standard_resolution.url
end

urls.each_with_index do |url, idx|
  image = RestClient.get(url)
  path = Dir.pwd + "/#{idx}.jpg"
  File.open(path, 'w') {|f| f.write(image) }
end
Другие вопросы по тегам