Приложение для получения данных из Instagram на C#
2026-03-10 09:55 Diff

Теги: c#, visual studio code, net core, visual studio 2017, версия community, webproxy, iwebproxy, proxyclient, instagram, получение данных из соц сети

Для чего может потребоваться получать данные из социальных сетей? Эти данные могут быть полезны маркетологам и специалистам по продвижению, для анализа и сбора статистики. Да, конечно существуют специальные сервисы (например, livedune.ru), но также существует и множество задач, которые нельзя решить в облаке.

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

Почему так?

Всё дело в ресурсах сервера и скорости работы базы данных, в количестве ядер на сервере и объёме оперативной памяти. И ещё надо всегда помнить, что не вы один пользуетесь этим сервером, пользователей у таких сервисов много.

Почему лучше написать своё приложение?

Потому что вы можете использовать все ресурсы, которые у вас есть. К тому же вы можете использовать многопоточность: как правило веб-сервисы разрабатываются на PHP или Node.JS, а это однопоточные технологии.

Для работы с NET Core вам потребуется Visual Studio 2017 (подойдёт версия Community). Если у вас ОС Windows или другая ОС, например, Linux или MacOS, можно использовать Visual Studio Code.

Также для обеспечения многопоточной работы нам потребуется несколько анонимных прокси-серверов, допустим мы имеем 10. Для работы с прокси-сервером необходимо реализовать класс WebProxy, использующий интерфейс IWebProxy, а также класс ProxyClient, который будет выполнять работу по сбору данных.

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

http://i.instagram.com/api/v1/users/{pk}/info/

где pk – уникальный идентификатор пользователя.

Используя такой набор классов, можно создать N-потоков по сбору информации из социальной сети (в зависимости от того сколько у вас есть прокси-серверов), что позволит получать данные крупных блогеров (1-15 миллионов подписчиков).

На самом деле у данного подхода нет предела, и все ограничения зависят от вашего аппаратного обеспечения, канала связи и количества прокси-серверов.

Есть вопрос? Напишите в комментариях!