Как извлечь данные из Instagram

Я пытаюсь создать базу данных Microsoft Access для учетных записей Instagram и хочу, помимо прочего, извлечь следующие данные:

  • Имя учетной записи
  • Количество подписчиков
  • Количество подписчиков
  • Количество сообщений (и их даты)
  • Количество как изображение
  • Количество комментариев к изображению

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

Является ли Microsoft Access лучшим решением этой проблемы? Есть ли лучшие решения?


11

Почему бы и нет просто посмотрите на данные json напрямую с URL:

https://www.instagram.com//?__a=1

Улучшить этот ответ
ответил 27 окт. 2017 в 14:10
  • он работает, хотя он не открывается, означает, что вы должны войти в Instagram, чтобы сделать этот URL работает — Хан Шахрукх 18 окт. ’18 в 8:57
добавить комментарий |

Почему бы просто не посмотреть на данные json напрямую с помощью URL:

https://www.instagram .com//? __ a = 1


9

Что ж, если в этом вопросе есть ключевое слово ‘web-Scraping’, позвольте мне поделиться здесь некоторой информацией.

Instagram имеет данные JSON JavaScript в своем источнике html при отображении пользователя информация по ссылке, например https://www.instagram.com/user-account/. Вы можете анализировать эти данные с помощью любого языка сценариев и получать данные JSON.

Instagram показывает только 10 сообщений один раз в одном запросе . Вы можете увидеть основную информацию пользователя например, имя пользователя, биография, количество сообщений, количество подписчиков и подписок . Но, , если нам нужны все лайки и комментарии, а также все изображения или лайки и комментарии для каждой публикации с фотографией . Затем мы должны нажать их кнопку « Загрузить еще ».

Запросить «Загрузить больше», Ajax Call include «? max_id ‘, который дает вам информацию о следующих 10 сообщениях. Итак, вам нужно создать цикл Post для отправки/получения остальной информации до тех пор, пока ‘max_id’ не станет пустым или пустым .

Пример запроса: первая страница, https://www.instagram.com/demo-user/

Следующий запрос данных: https://www.instagram.com /demo-user/? max_id = 1533276522

и так далее …

Недавно у меня появилось немного свободного времени, и я разозлился на Instagram;) Так что я просто сделал скрипт для решения всех этих проблем. Это работает на PHP, и код хорошо прокомментирован, поэтому я не думаю, что это вызывает какие-либо проблемы с пониманием потока приложения. Вы можете увидеть сценарий, как он работает, и можете использовать логику с любым другим языком.

Это происходит из этого кода репозитория GitHub

& .. Да, для этого не требуется Instagram API или еще .. 🙂

Улучшите этот ответ
отредактировано 28 сен 2018 в 14:05
fedorqui ‘ТАК, хватит вреда’
22k7575 золотых знаков448448 серебряных знаков502502 бронзовых знака
17 июня ’17 в 18: 142017-06-17 18:14
  • Здравствуйте, мне нужно сделать это из Java в качестве внутреннего процесса. Можете ли вы сказать, как мы можем скрутить Load More (instagram.com/demo-user/?max_id=1533276522) в качестве следующего URL? — Нараян Субеди, 10 сен. ’17 в 14:57
  • Я хочу получить hd_profile_pic_url_info. Возможно ли это с этим — Авадеш 31 дек. ’18 в 4:35
  • @Awadesh, это звонок со стороны разработчиков. «Hd_profile_pic_url_info» — это опция поиска пользователей, но, к сожалению, поиск пользователей еще не работает, и поэтому вы не сможете получить «hd_profile_pic_url_info». Что ж, вы можете попробовать теги (хэштег) с данными json «instagram.com/explore/tags/flowers/?__a=1» и найти «display_url» в данных json. Надеюсь, это поможет 🙂 — Нирадж Сингх 02 янв., В 10:22
добавить комментарий |

Хорошо, если в этом вопросе есть ключевое слово ‘web-Scraping’, тогда позвольте мне поделиться некоторой информацией здесь ..

Instagram имеет данные JavaScript JSON в своем источнике html, при этом информация о пользователе отображается по ссылке, например https://www.instagram.com/user-account/. Вы можете анализировать эти данные с помощью любого языка сценариев и получать данные JSON.

Instagram показывает только 10 сообщений один раз в одном запросе . Вы можете увидеть основную информацию пользователя например, имя пользователя, биография, количество сообщений, количество подписчиков и подписок . Но, , если нам нужны все лайки и комментарии, а также все изображения или лайки и комментарии для каждой публикации с фотографией . Затем мы должны нажать их кнопку « Загрузить еще »..

Запрос «Загрузить больше». Ajax Call включает «? max_id «, который дает вам информацию о следующих 10 сообщениях. Поэтому вам нужно создать цикл Post для отправки/получения остальной информации до тех пор, пока ‘max_id’ не станет пустым или нулевым .

Пример запроса: первая страница, https://www.instagram.com/demo-user/

Следующий запрос данных: https://www.instagram.com /demo-user/? max_id = 1533276522

и так далее …

Недавно у меня было свободное время, и я разозлился в инстаграм;) Так что просто сделал Скрипт для решения всех этих задач. Это работает на PHP, и код хорошо прокомментирован, поэтому я не думаю, что это вызывает какие-либо проблемы с пониманием потока приложения. Вы можете увидеть сценарий, как он работает, и можете использовать логику с любым другим языком.

Это происходит из этого кода репозитория GitHub

& .. Да, для этого не требуется Instagram API или еще .. 🙂


2

Вы обязательно должны проверить API Instagram, который может предоставить вам всю общедоступную информацию, которую вы хотите очистить. Вам просто нужно написать сценарий для правильных вызовов API (см. Ниже).

С веб-сайта Instagram:

Мы делаем наши Лучше всего, чтобы все наши URL-адреса были RESTful. Каждая конечная точка (URL) может поддерживать один из четырех разных HTTP-глаголов. Запросы GET получают информацию об объекте, запросы POST создают объекты, запросы PUT запрашивают обновление, и, наконец, запросы DELETE удаляют объекты.

Вам просто нужно иметь ACCESS-TOKEN для соответствующей учетной записи, готовой, когда вы используете URL-адрес в своем коде, и сможете распаковывать json, который Instagram возвращает вам с каждым запросом GET. Если данные недоступны напрямую , вы всегда можете вернуть их косвенно. — Имя учетной записи — Количество подписчиков — Количество подписанных людей

Вот отличная отправная точка: https://www.instagram.com/developer/endpoints/users/#get_users

А вот как вы могли бы вызвать API в python:

  #Python 2.7.6 # RestfulClient.pyimport requestsfrom requests.auth import HTTPDigestAuthimport json # Заменить  с правильным URLurl = "http://api_url" # Рекомендуется не указывать жестко учетные данные.  Поэтому попросите пользователя ввести учетные данные во время выполненияmyResponse = requests.get (url, auth = HTTPDigestAuth (raw_input ("username:"), raw_input ("Password:")), verify = True) #print (myResponse.status_code) # Для  успешный вызов API, код ответа будет 200 (OK) if (myResponse.ok): # Загрузка данных ответа в переменную dict # json. load принимает только двоичные или строковые переменные, поэтому использование содержимого для получения двоичного содержимого # Loads (Load String) принимает файл Json и преобразуется в структуру данных python (dict или list, в зависимости от JSON) jData = json.loads (myResponse.content)  print ("Ответ содержит {0} свойства" .format (len (jData))) print (" n") для ключа в jData: print key + ":" + jData [key] else: # Если код ответа  not ok (200), распечатайте полученный код ошибки http с описанием myResponse.raise_for_status ()  

Улучшите этот ответ
отредактировано 31 декабря 2016 г. в 06:12
Peter Hall
33.5k99 золотых знаков6969 серебряных знаков135135 бронзовых знаков
ответил 31 дек. ’16 в 06:10
  • 3
    Насколько я понимаю, API требует, чтобы пользователь предоставил вам доступ к своей (уже общедоступной) информации. Так ли это? — Брайс Эдвардс 31 дек. ’16 в 6:23
добавить комментарий |

Вы обязательно должны проверить API Instagram, который может предоставить вам всю общедоступную информацию, которую вы хотите очистить. Вам просто нужно написать сценарий для правильных вызовов API (см. Ниже).

С веб-сайта Instagram:

Мы делаем наши Лучше всего, чтобы все наши URL-адреса были RESTful. Каждая конечная точка (URL) может поддерживать один из четырех разных HTTP-глаголов. Запросы GET получают информацию об объекте, запросы POST создают объекты, запросы PUT запрашивают обновление, и, наконец, запросы DELETE удаляют объекты.

Вам просто нужно иметь ACCESS-TOKEN для соответствующей учетной записи, готовой, когда вы используете URL-адрес в своем коде, и сможете распаковывать json, который Instagram возвращает вам с каждым запросом GET. Если данные недоступны напрямую , вы всегда можете вернуть их косвенно. — Имя учетной записи — Количество подписчиков — Количество подписанных людей

Вот отличная отправная точка: https://www.instagram.com/developer/endpoints/users/#get_users

А вот как вы могли бы вызвать API в python:

  #Python 2.7.6 # RestfulClient.pyimport requestsfrom requests.auth import HTTPDigestAuthimport json # Заменить  с правильным URLurl = "http://api_url" # Рекомендуется не указывать жестко учетные данные.  Поэтому попросите пользователя ввести учетные данные во время выполненияmyResponse = requests.get (url, auth = HTTPDigestAuth (raw_input ("username:"), raw_input ("Password:")), verify = True) #print (myResponse. status_code) # Для успешного вызова API код ответа будет 200 (OK) if (myResponse.ok): # Загрузка данных ответа в переменную dict # json.loads принимает только двоичные или строковые переменные, поэтому использование содержимого для извлечения двоичного содержимого  # Loads (Load String) принимает файл Json и преобразует его в структуру данных Python (dict или список, в зависимости от JSON) jData = json.loads (myResponse.content) print («Ответ содержит {0} свойства» .format (len  (jData))) print (" n") для ключа в jData: print key + ":" + jData [key] else: # Если код ответа неправильный (200), вывести полученный код ошибки http с описанием myResponse  .raise_for_status ()  

1

В этом репо есть все: https://github.com/rarcega/instagram-scraper

Внимательно прочтите параметры.

instagram-scraper incindia -m 500 --media-metadata --include-location --media-types none дал мне json, который имеет:

  • URL изображения медиа,
  • тип медиа, количество просмотров,
  • количество лайков, количество комментариев (—comment также дает все комментарии)

и многое другое, чтобы я мог их изучить.

Вы также можете скачать все media

Улучшите это ответ
ответ дан 16 апр ’19 в 21:05
комментировать |

В этом репо есть все: https://github.com/rarcega/instagram-scraper

Внимательно читайте варианты.

instagram-scraper incindia -m 500 --media-metadata --include-location --media-types none дал мне json, который имеет:

  • URL изображения медиа,
  • тип медиа, количество просмотров,
  • количество лайков, количество комментариев (—comment также дает вам все комментарии)

и многое другое, для изучения.

Вы также можете скачать все media



Как мне удобно просматривать данные резервной копии Instagram?

Недавно я загрузил резервную копию своей Аккаунт Instagram …

и zip-файл содержал много файлов «.json», и я понятия не имею, как просматривать

это как … как это сделал Instagram

спасибо


Взгляните на это, я создал для той же цели

https://github.com/mainigautam/instagram_backup_manager


2

Понятия не имею, как это рассматривать как … способ, которым сделал Instagram

Вероятно, лучшее, что вы можете сделать, — это преобразовать файлы JSON в файлы CSV и использовать электронную таблицу для их просмотра. См. Ниже для получения дополнительной информации.

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

Файлы JSON охватывают множество данных:

  • Комментарии, которые вы оставили к фотографиям друзей (или ответы на комментарии, которые они оставили к вашим).
  • Когда вы начали подписываться на других пользователей Instagram и когда другие Пользователи Instagram начали подписываться на вас
  • Кого вы заблокировали в Instagram (и когда)
  • Когда вам понравился контент от разных пользователей (не список конкретного контента, который вам понравился)
  • Когда вы публиковали контент в Instagram (и какая у вас была остроумная подпись)
  • Все сообщения, которые вы отправляли другим пользователям с помощью мобильных приложений Instagram
  • Информация о вашем профиле
  • Выполненные вами поиски

В папках архива вы также можете просматривать большую часть содержимого, которое вы загрузили в службу Instagram, в том числе:

  • Какие изображения вы отправляли другим в личных сообщениях
  • Все Ins фотографии таграм, которые вы загрузили
  • истории из Instagram, которые вы заархивировали
  • Видео, которые вы опубликовали в Instagram

Источник, что находится в вашем дампе данных Instagram и как его получить

Улучшите этот ответ
ответил 8 марта ’19 в 17:43
  • ♦ спасибо, что рассматривает это в хорошем смысле …. но я жду лучшего ответа … если его не будет ……. ваш ответ до сих пор считается лучшим — mina nageh 08 мар. ’19 в 18:34
добавить комментарий |

Понятия не имею, как смотреть на это так … как в Instagram

Вероятно, Лучшее, что вы можете сделать, — это преобразовать файлы JSON в файлы CSV и использовать электронную таблицу для их просмотра. См. Ниже для получения дополнительной информации.

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

Файлы JSON охватывают множество данных:

  • Комментарии, которые вы оставили к фотографиям друзей (или ответы на комментарии, которые они оставили к вашим).
  • Когда вы начали подписываться на других пользователей Instagram и когда другие Пользователи Instagram начали подписываться на вас
  • Кого вы заблокировали в Instagram (и когда)
  • Когда вам понравился контент от разных пользователей (не список конкретного контента, который вам понравился)
  • Когда вы публиковали контент в Instagram (и какая у вас была остроумная подпись)
  • Все сообщения, которые вы отправляли другим пользователям с помощью мобильных приложений Instagram
  • Информация о вашем профиле
  • Выполненные вами поиски

В папках архива вы также можете просматривать большую часть содержимого, которое вы загрузили в службу Instagram, в том числе:

  • Какие изображения вы отправляли другим в личных сообщениях
  • Все Ins фотографии таграм, которые вы загрузили
  • истории из Instagram, которые вы заархивировали
  • Видео, которые вы опубликовали в Instagram

Источник, что находится в вашем дампе данных Instagram и как его получить

Оцените статью
logicle.ru
Добавить комментарий