В этом сообщении блога я объясню, как получить данные, связанные с общедоступной публикацией в Instagram, с помощью JavaScript или PHP без токена доступа.

В первой части я буду использовать JavaScript для извлечения данных и отображения их на веб-странице, а во второй части мы будем делать это с процедурным подходом PHP.

Первое, что нужно сделать, это получить URL-адрес публикации или идентификатор публикации из Instagram. В моем случае я использую пост КриштиануРоналду, чтобы продемонстрировать это.

Вот URL поста в Instagram, который я использую

https://www.instagram.com/p/CKow063A0bp/

чтобы получить JSON сообщения выше, нам нужно добавить "?__a=1" в конце URL-адреса.

Теперь это будет выглядеть примерно так.

https://www.instagram.com/p/CKow063A0bp/?__a=1'

Мы будем использовать указанный выше URL-адрес для получения данных JSON текущего сообщения.

Чтобы отобразить данные на веб-странице. Используя JavaScript, мы будем использовать карточку Bootstrap для отображения сведений, которые мы получим по указанному выше URL-адресу.

Исходный код этой карты Bootstrap:

‹div class="card" style="width: 18rem;"›
‹img class="img img-responsive" id="postImage" class="card-img-top" alt="…"›
‹p›Имя пользователя: ‹strong›‹span id="instaUsername"›‹/span›‹/strong› ‹/p›
‹p›Имя: ‹strong› ‹span id="instaName" ”›‹/span›‹/strong›‹/p›
‹div class="card-body"›
‹p class="card-text"›Количество лайков | ‹strong›‹span id="noLikes"›‹/span›‹/strong›‹/p›
‹p class="card-text"› Нет комментариев | ‹strong›‹span id="noComments"›‹/span›‹/strong›‹/p›

‹/div›
‹/div›

Скриншот кода

Вот код JavaScript, который извлекает данные и отображает их на веб-странице.

‹скрипт›

fetch('https://www.instagram.com/p/CKow063A0bp/?__a=1')

.then(response =› response.json())
. then(data =› {
// Сделайте что-нибудь с вашими данными

// Извлеките изображение
var imageUrl = data.graphql.shortcode_media.display_url;
document. getElementById("postImage").src= imageUrl;

// Получить имя пользователя
var userName = data.graphql.shortcode_media.owner.username;
document.getElementById(“instaUsername”).append(userName);

// Получить Имя учетной записи
var accountName = data.graphql.shortcode_media.owner.full_name;
document.getElementById("instaName").append(accountName);

// Получаем лайки публикации
var noLikes = data.graphql.shortcode_media.edge_media_preview_like.count;
document.getElementById(“noLikes”).append(noLikes);

// Получить комментарии к сообщениям
var noComments = data.graphql.shortcode_media.edge_media_preview_comment.count;
document.getElementById("noComments").append(noComments);

});

‹/скрипт›

Вывод

Теперь ниже приведен код для реализации того же с использованием PHP.

‹?php

$json = file_get_contents(‘https://www.instagram.com/p/CKow063A0bp/?__a=1’);

$obj = json_decode($json);

echo ' ‹img class=”img img-responsive” src=”’.$obj-›graphql-›shortcode_media-›display_url.’” id=”postImage” class=”card-img-top” alt=”…” ›

‹p›Имя пользователя: ‹strong›‹span id="instaUsername"›’.$obj-›graphql-›shortcode_media-›owner-›username.’‹/span›‹/strong› ‹/p›

‹p›Имя: ‹strong› ‹span id="instaName"›’.$obj-›graphql-›shortcode_media-›owner-›full_name.’‹/span›‹/strong›‹/p›

‹div class="тело карты"›

‹p class="card-text"›Количество лайков | ‹strong›‹span id="noLikes"›’.$obj-›graphql-›shortcode_media-›edge_media_preview_like-›count.’‹/span›‹/strong›‹/p›

‹p class="card-text"› Комментариев нет | ‹strong›‹span id="noComments"›’.$obj-›graphql-›shortcode_media-›edge_media_preview_comment-›count.’‹/span›‹/strong›‹/p›

‘;

?>

Это объясняет, как вы сможете получать информацию о публикации в Instagram (общедоступной) с помощью PHP или JavaScript.

Ссылка на Github: Нажмите здесь

Ссылка: https://github.com/vikasbukhari/Public-Instagram-Post-JSON-using-JavaScript-PHP-Without-Access-Token

Читайте в моем блоге: https://blog.vikasbukhari.com/posts/how-to-get-public-instagram-post-json-using-javascript-php-without-access%20token/