Интерфейс API скриншотов Instagram Square

Будет ли Instagram предоставлять какой-либо способ захватить портрет/пейзаж через API? Документы API выглядят нетронутыми.

На данный момент они по-прежнему возвращают квадратные размеры для портретных изображений, но документация api не предоставляет никакого способа получить исходное изображение.

Будут ли они возвращать квадратные изображения? Есть ли у Instagram какие-либо комментарии по этому поводу?

Ответ 1

Сентябрь Обновление 4-го 2015 года:

Начиная с 3 сентября 2015 года, instagram теперь позволяет клиентам API получать изображения в исходном соотношении сторон (т.е. прямоугольное для ландшафтов, Portraits) и не будет обрезать их, если вы обновили новый параметр в клиенте API.

Действия:

  • Войдите в свои настройки клиентских приложений на https://instagram.com/developer/
  • Нажмите Управление клиентами в верхнем навигационном меню.
  • Найдите своего клиента API и нажмите Изменить.
  • Перейдите на вкладку Миграции для вашего приложения API-клиента и установите флажок "Неквадратные носители".
  • Нажмите Обновить клиент.

введите описание изображения здесь

Что это! Теперь, когда вы получаете изображения из конечных точек API, портреты, пейзажи, которые были загружены, не будут обрезаны до квадратных изображений, и оригиналы будут возвращены.

Связанная запись в блоге: миграция API для пейзажных и портретных форматов

Предыдущий ответ (Устаревший, не используйте, если вы не хотите, чтобы BOTH были квадратными и неквадратными версиями, все еще взломанными:))

Да, API выглядит нетронутым, но я нашел взломать исходные изображения для пейзажей и портретов. Вы должны программно удалить раздел URL-адресов, возвращаемых в массиве images.

См. ниже - фрагмент из моего ответа здесь.

API по-прежнему возвращает квадратные версии изображений, даже те, которые загружаются как портреты или пейзажи. Если вы хотите, чтобы исходные пейзажные/портретные изображения также, вы должны сделать немного взлома - подробности ниже - до тех пор, пока они не обратятся к нему в ответе API.

Возьмем пример и пройдите через него.

Посмотрите эту фотографию Тейлора Свифта, загруженную одним из пользователей, упомянутых в Сообщение блога IG/пресс-релиз - @johnbenett

https://instagram.com/p/6ZVIHTJLYg/

Это оригинал загруженной фотографии - Портрет 512 пикселей x 640 пикселей

введите описание изображения здесь

И вот что возвращает API Instagram для различных изображений (включая эскиз) для вышеупомянутого портретного изображения.

  "images": {
    "low_resolution": {
      "url": "https://scontent.cdninstagram.com/hphotos-xfa1/t51.2885-15/s320x320/e35/c0.135.1080.1080/11909195_1715998838621946_791786043_n.jpg",
      "width": 320,
      "height": 320
    },
    "thumbnail": {
      "url": "https://scontent.cdninstagram.com/hphotos-xfa1/t51.2885-15/s150x150/e35/c0.135.1080.1080/11909195_1715998838621946_791786043_n.jpg",
      "width": 150,
      "height": 150
    },
    "standard_resolution": {
      "url": "https://scontent.cdninstagram.com/hphotos-xfa1/t51.2885-15/s640x640/sh0.08/e35/c0.135.1080.1080/11909195_1715998838621946_791786043_n.jpg",
      "width": 640,
      "height": 640
    }

Таким образом, изображение стандартного разрешения, возвращаемое API для этого портретного изображения, 640 пикселей квадратный и выглядит следующим образом.

введите описание изображения здесь

а изображение с низким разрешением, возвращаемое API для этого портретного изображения, составляет 320 пикселей квадратный и выглядит следующим образом.

введите описание изображения здесь

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

введите описание изображения здесь

Итак, как вы получаете исходное изображение для фотографии, загруженной в качестве пейзажа или портрета?

Так как API возвращает на данный момент только один набор изображений, но сайт может отображать исходные изображения с соотношением сторон, я немного искал их и понял, что если вы удалите последнюю, но 1 часть URL из (в этом примере удалите /c0.135.1080.1080), вы получите исходный формат изображения (и необрезанный), портретные изображения.

Сохраняя тот же пример выше:

Стандартное разрешение Портретное изображение (512 пикселей x 640 пикселей) URL: https://scontent.cdninstagram.com/hphotos-xfa1/t51.2885-15/s640x640/sh0.08/e35/11909195_1715998838621946_791786043_n.jpg

и выглядит так.

введите описание ссылки здесь

Портрет с низким разрешением (256 пикселей x 320 пикселей) URL: https://scontent.cdninstagram.com/hphotos-xfa1/t51.2885-15/s320x320/e35/11909195_1715998838621946_791786043_n.jpg

и выглядит так.

введите описание изображения здесь

Изображение с уменьшенным изображением (120 px x 150 px) URL: https://scontent.cdninstagram.com/hphotos-xfa1/t51.2885-15/s150x150/e35/11909195_1715998838621946_791786043_n.jpg

и выглядит так.

введите описание изображения здесь

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