#php #instagram
#php #Instagram
Вопрос:
Пытаюсь использовать этот код, приведенный в статье, для извлечения и отображения пользовательских данных. Все, что мне удается получить до сих пор, это
Имя пользователя не найдено.
<?php
$username = 'burhandodhy';
$response = @file_get_contents( "https://www.instagram.com/$username/?__a=1" );
if ( $response !== false ) {
$data = json_decode( $response, true );
if ( $data !== null ) {
$full_name = $data['graphql']['user']['full_name'];
$follower = $data['graphql']['user']['edge_followed_by']['count'];
echo "{$full_name} have {$follower} followers.";
}
} else {
echo 'Username not found.';
}
?>
Когда я захожу по ссылке в @file_get_contents, я вижу много информации о пользователях, но я не знаком с PHP и другими языками такого типа. Может кто-нибудь, пожалуйста, указать мне правильное направление для исследования или отправить мне быстрое исправление, если этот код должен работать, и есть просто ошибка.
Спасибо, Брайан
Добавлен этот код в файл с именем
instagram.php
на моем веб-сайте WordPress.
Я просто хочу узнать, как отображать информацию https://www.instagram.com/$username/?__a=1
на моем веб-сайте.
Комментарии:
1.
file_get_contents()
является функцией PHP и должна использоваться как$result = file_get_contents(string);
. Вам нужно изменить@file_get_contents
с помощью justfile_get_contents
. Также взгляните на API Instagram здесь .2. Хм, все еще не работает. Может быть, это поможет мне узнать, чему учиться лучше. О чем бы вы назвали эту информацию instagram.com/nike/?__a=1 ? Это json? Было бы проще использовать JS?
3. Это JSON, но, поскольку я не могу получить доступ к этим данным без входа в систему, вам нужно будет включить файл cookie для просмотра этих данных (что в данной ситуации невозможно). Я рекомендую вам использовать API Instagram, который использует токен аутентификации.
4. Смогу ли я по-прежнему искать информацию о других учетных записях с помощью API? Кроме того, для использования API с WordPress вы рекомендуете PHP?
5. Я бы использовал PHP, да. В документах API Instagram вы можете найти информацию о том, как запрашивать другие учетные записи.
Ответ №1:
Я считаю, что вам нужно объединить переменную в ссылку.
$response = @file_get_contents( "https://www.instagram.com/**".$username."**/?__a=1" );
Но, кроме того, я не верю, что ссылка будет работать, если вы не прошли аутентификацию через Instagram в любом случае.
Комментарии:
1. Конкатенация не требуется.
2. @ceejayoz подробнее? не работает без объединения для меня в моих скриптах, которые выглядят точно так же?
3.
"https://www.instagram.com/$username/?__a=1"
это отличный синтаксис, который будет правильно интерпретирован. Конкатенация не требуется. (Кстати, я тестировал.) Другая часть вашего ответа — что вам нужно войти в систему, чтобы получить доступ к этой конечной точке — кажется правильной.4. Я не понимаю, как? У меня есть эта строка `$ d = file_get_contents(‘ cdn.syndication.twimg.com/widgets/followbutton /… );` Который не работает без . перед $t? Алос, прошу прощения за плохое форматирование.
5. Вы должны изучить разницу между
'
и"
в PHP.