Инстаграм бот помогает продвигать посты в Instagram. Это популярная сеть, и существуют сервисов по раскрутке и продвижению аккаунтов. Не все они эффективны, а некоторые являются мошенническими. Рассмотрим популярные сервисы, которые чаще всего используются для ведения бизнеса в сети.
ТОП лучших ботов для Instagram
Лучшими сервисами по раскрутке постов считаются работающие онлайн, без установки на компьютер, поскольку так уменьшаются риски взлома. Сервисы для помощи в Instagram условно разделяют на расширенные и узкопрофильные. Например, у бота Brobot широкий выбор функций, применять его можно во многих социальных сетях, а OnlyPult предназначен только для публикации отложенных постов.
Beliked
Сервис предоставляет большой список инструментов для продвижения аккаунта в Instagram. Бот фильтрует подписчиков по категориям, подбирает целевую аудиторию по расположению и интересам. Можно просматривать историю посещений, анализировать динамику числа пользователей.
Beliked регулярно обновляется, вместе с этим увеличивается и список функций. Помимо автоматической накрутки, владелец бота может создавать визитные карточки. На все вопросы по работе программы отвечает техническая поддержка.
Instaplus.pro
Все действия бот для Инстаграма совершает в автоматическом режиме. Клиент может раскручивать организацию или личную страницу. Instaplus.pro можно пользоваться на ПК или мобильном устройстве. Для продвижения аккаунта достаточно запустить бот, а всю работу он сделает сам. С помощью инструментов можно выбирать целевую аудиторию. Остальные настройки запускаются автоматически, что не всегда эффективно.
BroBot
Универсальный бот, которым пользуются в Instagram, ВКонтакте, Одноклассниках и Facebook. Сервисом пользуются предприниматели и обычные пользователи. Его основные функции:
- публикация статей по установленному времени;
- углубленный отбор целевой аудитории;
- автоматическое проставление лайков и репостов;
- рассылка приглашений;
- ручная настройка бота;
- прямой диалог с подписчиками;
- сервисы для обхода капчи;
- доработка скриптов для программ.
Важно: с помощью BroBot делать репосты в Instagram нельзя.
Программа доступна также в бесплатном виде, но с минимумом возможностей. Для ведения бизнеса в сети лучше использовать платный пакет.
OnlyPult
Бот создан для отложенной публикации постов, поэтому многозадачности в нем нет. Работает сервис в автоматическом режиме, пользователю нужно будет один раз его настроить и далее только следить за его работой.
Функция слежения собирает и анализирует наиболее популярные тренды и посты. При первой регистрации клиент сможет использовать бот бесплатно в течение недели.
AdSocial
Сервис помогает быстро накручивать лайки и привлекать подписчиков. Его основное отличие – множество бесплатных функций, которыми пользуются специалисты узкого профиля. Бот работает в автоматическом режиме по заданному времени, поэтому для продвижения страницы или сайта достаточно запустить программу.
Scout
С его помощью можно сразу подключить до 50 аккаунтов , при этом рекламный контент будет отображаться уже при подписке. Уровень работы сервиса зависит от умения привлечь аудиторию, а рассылку и приглашения Scout сделает самостоятельно. После указания геолокации и хештегов бот запустит фильтрацию и уведомит всех подписчиков.
Программа моментально реагирует на входящие сообщения в директ, поэтому с потенциальным клиентом можно будет общаться при первой его реакции на пост.
Funinsta
Цель сервиса – привлечение подписчиков. Бот не обладает профессиональными настройками, но необходимые для раскрутки страницы функции присутствуют. Funinsta отличается низкой ценой обслуживания, поэтому это один из наиболее востребованных ботов в Instagram.
При первой регистрации клиенту предоставляется тестовый период на четыре дня, устанавливать программу на компьютер не нужно, все действия совершаются онлайн.
SocialHammer
Бот предназначен для раскрутки страниц и сообществ ВКонтакте и Instagram. SocialHammer – это облачный сервис, которым можно управлять из любого устройства. Раскрутка производится в автоматическом режиме по заданному времени с применением опции автопостинга.
Основная особенность бота – наличие функции LiveDune, которая собирает базу пользователей сети. Это дает возможность собирать всю информацию об аудитории, а также следить за конкурентами, определяя накрутку подписчиков и лайков.
Паразайт
Сервис обладает следующими возможностями:
- отложенный постинг текста и медиафайлов;
- оповещение о сообщениях и общение в директе;
- просмотр данных других пользователей;
- функция редактирования историй;
- комментирование всех постов;
- возможность комплексной загрузки файлов;
- сбор информации и аналитика.
Практически все действия совершаются ботом в автоматическом режиме. При первой регистрации предоставляется неделя бесплатного пользования на лучшем тарифе.
Zengram
Бот предназначен для раскрутки страниц и постов в Instagram. Обладает всеми необходимыми инструментами для точной настройки выбора аудитории. В Zengram можно проводить графический анализ подписчиков, включать отложенную рассылку постов, отвечать на сообщения в директ.
При любых вопросах по работе сервиса можно обратиться в техническую поддержку, которая быстро реагирует на запросы клиентов. Годовой абонемент bot Instagram стоит 5 тыс. р., и за небольшую цену можно совершать практически все действия по продвижению постов в сети.
Заключение
Боты различаются количеством функций, эффективностью работы и стоимостью , поэтому выбор зависит от клиента и его целей. Главное в поиске автоматизированного помощника – не попасться на уловку мошенников, которые создают идентичные программы, но для воровства данных.
Источник: instagram-my.ru
Автоматизируй все: 20+ телеграм-ботов и сервисов для Инстаграма
Если у вас нет желания или времени заниматься рутинными задачами в аккаунте Инстаграма*, привлеките ботов. Настроить их под ваши требования легко, если следовать инструкции.
Найти готовых ботов можно в Телеграме, либо создать самостоятельно с помощью различных онлайн-конструкторов. Конечно, у самостоятельно созданных ботов возможностей может быть намного больше, но и сделать их сложнее. Поэтому в этой статье мы сконцентрируемся на готовых ботах, которых можно найти и прикрепить к своему аккаунту.
Что делают боты:
- Редактируют текст. Боты-редакторы помогут исправить ошибки, изменить шрифт и т. д.
- Редактируют фотографии. Помогают обрезать фотографии, настраивать освещение и контрастность, добавляют эффекты, создают gif-анимации.
- Ищут информации о конкурентах. Собирают информацию об активных подписчиках конкурентов, сохраняют контент чужого профиля для анализа, собирают активную аудиторию с любого аккаунта, который вы ему пришлете, и выдают логины пользователей.
- Собирают данные об аудитории. Помогают настроить таргетированную рекламу, узнать охваты, показы и просмотры профиля, изучить возраст, пол, географию и активность аудитории.
- Отвечают на частые вопросы пользователей. Если пользователи часто задают похожие вопросы, вы можете с помощью специального бота настроить ответы, а бот будет сам отвечать.
- Подбирают хештеги. По слову, по фото, из аккаунта конкурентов. Вы отправляете слово или картинку – в ответ бот присылает облако хештегов, которые должны подойти под ваш запрос.
- Принимают оплату. Например, бот может принять деньги за подписку на закрытый канал или плату за товар.
- Делают рассылки. Распространяют заранее подготовленный текст в чатах или личных сообщениях. Автоматически отправляют ваши новые записи из любых соцсетей в каналы Telegram.
- Продвигают аккаунт. Накручивают подписчиков, просмотры и лайки на ваши посты – но мы не рекомендуем таким образом растить аккаунты. Помогают подобрать блогеров и купить рекламу.
Это далеко не все возможности ботов для работы с Инстаграм*ом. Мы перечислили только несколько видов классных ботов, но и они смогут упростить вашу ежедневную работу.
Полезные Инстаграм*-боты
Перейдем к самим ботам, разделим их по функционалу и расскажем, чем полезен каждый. Напоминаем, что мы подобрали наиболее полезных
Геннадий
Бот «Геннадий» от SMMplanner:
- подберет хештеги по слову или картинке;
- удалит фон с изображения;
- соберет хештеги конкурентов;
- найдет оптимальное время для постинга.
Работать с ним просто, а еще он экономит ваше время и помогает с повседневными задачами. Советую добавить его в ваш Телеграм, он точно пригодится.
Для работы с текстами
3 бота для подготовки постов в Инстаграм*:
- Text4InstaBot – бесплатный бот, который поможет привести текст в порядок: сделать абзацы, выделить красные строки, разместить текст по центру, сделать зачеркивание слов, если это необходимо. Если ваш текст превышает лимит поста в Инстаграме*, то бот сообщит вам об этом.
- SelfSMMBot – этот бот для текста в Инстаграм* бесплатно преобразует голосовые сообщения в текстовые. Подойдет для тех, у кого не так много времени, чтобы набирать текст вручную. Конечно, придется подредактировать, но это займет меньше времени, чем если печатать объемные посты с нуля.
- GlvrdBot – бесплатный бот-редактор. Исправит грамматические ошибки, удалит мусор и отправит вам готовый текст для публикации.
- Orforobot – бесплатный бот, который умеет работать в каналах. Проверяет текст на соответствие инфостилю, исправляет орфографию. Планируется добавить проверку пунктуации.
Если нужна более глобальная автоматизация работы с контентом, используйте SMMplanner вместе с ботами. Сервис поможет с публикациями, причем не только в Инстаграме*. Что в нем можно делать:
- готовить отложенные посты для 7 соцсетей и 4 рекламных площадок – как одинаковые, так и отдельно для каждой платформы;
- работать над материалами в одиночку или с командой – можно выдать отдельное разрешение каждому сотруднику;
- настраивать публикации из RSS-ленты;
- редактировать картинки и видео для каждого поста;
- добавлять к материалам хештеги, геолокации, опросы, файлы;
- добавлять к посту первый комментарий – в некоторых соцсетях.
Такой подход экономит время и силы – не приходится отвлекаться на постинг каждый день. Можно подготовить публикации сразу на неделю или месяц. Пробуйте!
Для работы с графикой
- Wmarkbot – бот для защиты авторских прав. Добавляет к вашему изображению водяной знак. Полезная функция, чтобы ваши уникальные изображения не украли конкуренты. Взять они их смогут, но заморачиваться с удалением водяных знаков вряд ли станут. Кстати, такая функция есть и в SMMplanner.
- Memingbot – этот бот бесплатно создает простые мемы. Можно воспользоваться готовыми шаблонами или добавить свои. Есть платные функции – добавление своего имени или ника в мем, дополнительные места для шаблонов.
- Bebot – платный бот-фоторедактор с достаточно широким функционалом и хорошим качеством обработки изображений. До 16 эффектов для улучшения изображения, можно менять форму фото, распознавать текст, создавать пазлы из фотографий и многое другое.
Для анализа конкурентов
Стоит знать, чем занимаются конкуренты и насколько хорошо у них получается взаимодействовать с аудиторией. Иногда именно анализ конкурентов наводит на мысли – что делать в своем профиле, чтобы добиться больших результатов.
Важно отметить: платить за ботов или нет – выбор каждого. Мы знаем, что этими ботами пользуются специалисты, но не можем поручиться за каждого бота и каждый продукт, поэтому будьте внимательны при выборе помощников.
- Soberubot – отправьте боту ссылку на Инстаграм*-аккаунт, и он за небольшую плату соберет данные о подписчиках. Бот позволяет получить данные всех подписчиков или только пользователей, которые лайкали последние 10 постов. Это будет полезно тем, кто хочет показывать свою рекламу подписчикам конкурентов.
- IGSpy – этот платный бот-шпион дает возможность анонимно смотреть сторис и трансляции в Инстаграме* и сохранять необходимый контент. Теперь можно подсматривать за конкурентами, не выдавая себя.
- Getpapabot – с помощью этого бота можно получить статистику по вашим подписчикам или аудитории конкурентов. В пробной версии бота – только 2 графика, за полную информацию придется заплатить. Стоимость зависит от количества подписчиков. Отлично подойдет для таргетированной рекламы – бот сравнивает вашу страницу и страницы конкурентов, дает полную картину аудитории: возраст, пол, интересы, подписки и т. д.
Боты для анализа пригодятся, когда не нужно собирать полную статистику по своему аккаунту. Но если вы собираетесь следить за показателями своей страницы, составлять отчетность и корректировать стратегию – используйте DataFan.
Сервис аналитики соцсетей и таргетированной рекламы поможет собрать отчеты с актуальными данными и разобраться, что происходит в аккаунте – вашем или клиента. Вы сможете наглядно оценить, как прошла рекламная кампания и какие посты больше других нравятся аудитории.
Для продвижения
- TG_siller_bot – бот для почти мгновенной накрутки подписчиков и лайков в профиле Инстаграма*. Подписчики бота выполняют простые действия в Телеграме – выполняют квесты, задания, переходят на сайты рекламодателей – и получают выплаты. А вы получаете свои лайки, просмотры и подписчиков. Только стоит понимать, что это будет пассивная, не заинтересованная в вашем контенте аудитория.
- Meredian_Active_bot – бот, работающий по похожему принципу, что и предыдущий. За небольшую плату накрутит вам лайки, просмотры, подписчиков. Есть встроенная функция «живых» подписчиков и лайков от реальных людей. Но минус тот же – аудитория не будет заинтересована в ваших материалах, поэтому лучше пользоваться этим аккуратно и для сбора первых подписчиков.
Для скачивания контента
Иногда так нужен текст из Инсты или картинка. Как их быстро достать? Конечно, через ботов:
Для проведения конкурсов и розыгрышей
Активность пользователей не будет такой высокой, если не проводить иногда розыгрыши и конкурсы. И лучше бы этот процесс автоматизировать, чтобы исключить сомнения в вашем методе выбора победителя. Хорошо, что это легко сделать через ботов:
- Getcombot – один из популярных бесплатных ботов для выгрузки комментариев из Инстаграма*. С его помощью вы сможете определить победителей розыгрышей, конкурсов или акций. Нужно отправить боту ссылку на пост в Инстаграме*, через несколько минут он пришлет ссылку для загрузки комментариев в Excel в формате CSV либо задаст параметры и сгенерирует случайное число для определения победителя.
- Instagramlikes – принцип тот же, что и у Getcombot. Бот выбирает в Инстаграме* победителей конкурсов лайков. Вы ему – ссылку на пост, а он вам – результат со списком пользователей, которые ставили лайки. Победителя вы можете выбрать самостоятельно или сгенерировать с помощью генератора случайных чисел. Работает только с постами, в которых не более 1000 лайков.
Разные полезные боты
Ниже – 3 полезных бота для Инстаграма*, которые тоже пригодятся для работы:
- MemeMachine – с этим ботом не соскучишься. С ним вы всегда будете в курсе самых свежих мемов и сможете делиться ими с подписчиками.
- EasyStrongPasswordBot – полезный сервис для создания простых и сложных паролей. С подсказками, чтобы легче было их запомнить.
- IAmprcompanyBot – бесплатный сервис для мониторинга комментариев. Отправляете боту ссылку на аккаунт – он будет присылать новые комментарии с ссылкой на пост и ником автора. Таким образом вы сможете круглосуточно отслеживать активность конкурентов и находить клиентов.
Конструкторы чат-ботов для Инстаграма*
Чат-бот – это личный помощник, который автоматически отвечает на вопросы, принимает заявки на сайтах, в чатах и мессенджерах.
Возьмем, к примеру, бизнес-аккаунт Инстаграма*, который продает авторские светильники. Заинтересованные пользователи, желающие приобрести продукт, пишут в директ, чтобы уточнить цену или оформить заказ. И, если продаж не очень много, владелец аккаунта может ответить сам.
Но когда товар разбирают слишком быстро, у владельца нет возможности отвечать на все вопросы. Для этого и нужны чат-боты – чтобы оформлять заказы и отвечать на вопросы от имени владельца аккаунта или администратора.
Для создания чат-бота под нужды бизнеса можно использовать различные конструкторы. Мы подобрали полезных ботов с простыми и гибкими настройками:
- Boss.direct – платный сервис, который поможет создать чат-бота и разместить его в сторис. Бот будет трудиться круглосуточно, без перерыва на обед Ему можно задавать вопросы через сторис. На сайте этого сервиса есть подробная пошаговая инструкция по настройке бота. Она займет всего несколько минут, и у вас будет свой чат-бот. Сервис предлагает 3 тарифных плана: пробный на 3 дня, основной и профессиональный. Каждый предусматривает подключение одного Инстаграм*-аккаунта.
- Chat2Desk – этот платный сервис работает со многими мессенджерами и соцсетями. После создания чат-бот будет выполнять функции колл-центра, собирая заявки в одном окне. Также есть доступ к детальной статистике, чтобы анализировать поведение пользователей.
- SMMBOT – платный онлайн-конструктор чат-ботов. Готовые боты будут не только продавать товары и услуги, но и смогут консультировать пользователей. Кроме того, с помощью этого сервиса можно вести CRM и делать рассылки. Чтобы создать бота, нужно иметь Инстаграм*-аккаунт. Также в сервисе есть готовые шаблоны и цепочки сообщений, поддержка медиафайлов. Тарифные планы предусматривают от 100 диалогов с чат-ботом до безлимита. Количество Инстаграм*-аккаунтов и сообщений в диалоге не ограничено.
В заключение
Instagram-бот для улучшения личной жизни
Недавно мы с девушкой серьезно поговорили и выяснилось, что я даже не пишу ей “С добрым утром” и вообще редко пишу по утрам. В целом, причина кроется в том, что я не просыпаюсь с восходом первых лучей солнца (как она), а переписываться не очень люблю. Ну а ей, конечно же, приятно получать нежности по утрам и все такое.
Так как общаемся мы исключительно в Instagram, я подумал, что неплохо бы совместить все это и автоматизировать процесс. Тем более что у соцсети вроде как есть открытый API.
Как оказалось, полноценного официального API там нет, а тот что есть – поддерживает только бизнес-аккаунты. Но так или иначе — попробовать хотелось.
Я уверен, что существуют сервисы для этого, но сделать собственного рабочего бота вот прямо очень хотелось. Я нашел на Хабре статью про отправку сообщений на PHP из которой взял адрес для отправки запроса (ссылка на статью в конце). А здесь я постараюсь описать, по сути, тот же процесс, но на Питоне с маленькой доработкой. Тот же бот, с минимальным набором функций. Может, кому-то пригодится.
Полный код и README на Github, а ниже — ключевые моменты.
Схема скрипта
Для организации кода и какой-никакой возможности расширения функционала в будущем, скрипт разбился на 3 класса:
- Login – отвечает за авторизацию и создает сессию;
- MessageMaker – формирование сообщения;
- SendMsg – непосредственная отправка сообщения.
И дополнительно, 2 конфигурационных файла auth.txt и conf.txt: данные авторизации и словарь с сообщениями соответственно и менеджер запуска – insta_bot_manager.py.
Класс Login — авторизация
Посмотрим как работает авторизация Instagram. Для этого смотрим исходящие запросы прям в инструментах браузера:
Как видно – запрос отправляется на адрес https://www.instagram .com/accounts/login/ajax/, да и выглядит довольно просто. Нет ни токенов, ни каких-то левых параметров. Вот только пароль в зашифрованном виде. Как я выяснил, это кодировка AES-GCM256, очевидно, с каким-то префиксом. Строка из запроса выглядит так:
Параметр «10» — обозначает пароль в зашифрованном виде, далее — время и сам пароль. Делать свой шифровальщик я, конечно же, не буду, но есть и другой способ залогиниться с паролем в чистом виде. Для передачи обычной строки достаточно заменить «10» на «0»:
Для хранения данных авторизации используется файл – auth.txt. Знаю, что лучше хранить это все в зашифрованном виде, но так как данные находится только на сервере – это относительно безопасно.
Конструкция auth.txt выглядит так:
- Login
- Password
- Ig_user_id (id пользователя которому отправляем сообщение)
Просто текст. Каждый параметр должен быть записан с новой строки. Читаем из файла:
with open(«auth.txt», «r») as f: l = f.read().split(«n») username = l[0] passwd = l[1] self.user_id = l[2]
Теперь авторизуемся, используя requests :
# Для начала, получим csrf-token: r = requests() # Можно использовать кусок полной ссылки для авторизации или сделать запрос прямо к https://www.instagram.com/. login_url = «https://www.instagram.com/accounts/login/» # В заголовках можно указать свой user-agent. В другом случае, приходит оповещение безопасности в приложении, которое лучше подтвердить. # При отсутствии или каком-то мусоре в заголовке User-Agent, IG присылает в ответе ошибку “message”: “user-agent missmatch”. # Так как имитируется сессия – сразу изменим user-agent прямо в объекте сессии. s = request.Session() s.headers[«User-Agent»] = («Mozilla/5.0 (iPhone; CPU iPhone OS 14_1 like Mac OS X) » + «AppleWebKit/605.1.15 (KHTML, like Gecko) Mobile/15E148 Instagram 142.0.0.22.109» + «(iPhone12,5; iOS 14_1; en_US; en-US; scale=3.00; 1242×2688; 214888322) NW/1») # Ну и, собственно, сам запрос get_token = r.get(login_url, headers=headers) if get_token.cookies.get(«csrftoken») is not None: headers[«x-csrftoken»] = get_token.cookies[«csrftoken»] #Если не получилось вытянуть токен из cookie – пробуем другой путь else: if csrf_token.get(«success») != None: headers[«x-csrftoken»] = csrf_token.get(«value») if csrf_token.get(«error»): return csrf_token
Отправляем POST-запрос с полученными данными:
login = r.post(login_url + “ajax/”, data=auth_data, headers=headers) # статус операции можно проверить, распарсив ответ от сервера. #Если значение status: ‘ok’ в словаре response, и присутствует UserId – все хорошо. # Но, для простоты, можно посмотреть установились ликуки «sessionid» if log_in.cookies.get(«sessionid»): return
Полный ответ должен выглядеть как-то так:
Ищем csrf-токен вручную
Если меняется IP, агент, пароль и, наверняка, какие-то другие параметры клиента – Инстаграм начинает требовать подтверждение политики использования cookie. Соответственно, куки нет, токена нет и нормальный POST-запрос невозможен.
Если посмотреть текстовое представление ответа на первый GET-запрос по адресу /accounts/login/– можно найти токен в форме авторизации.
Для поиска сделаем простую регулярку, которая не будут работать только с этим ответом:
import re def response_parse(self, response): if response is not None: token = re.search(‘(csrf_token»:»)+(?P[A-Za-z0-9]*)’, response) token_value = token.groupdict() if token_value is not None: return return
Как правило, это срабатывает только для первой попытки, после изменения параметров. Почему-то после авторизации куки начинают выдаваться как обычно. НО, важно следить за значением токена – после успешного запроса он сменится в cookie и, хорошо бы его перезаписать.
“Умный” выбор сообщения
Так как бот создан с единственной целью – отправлять девушке сообщения по утрам, то стоило бы добавить ему немного «мозгов». Вообще, схема подбора сообщения выглядит довольно-таки тривиально – читается список доступных фраз из файла и рандомно выбирается заветная.
Поскольку скрипт будет срабатывать каждый день, а сообщения попадаются вида «Доброе утро, уже на работе?» — лучше следить за тем, чтобы такое не отправлялось в выходные дни, и наоборот.
С добрым утром
Обработка словаря и псевдорандомный выбор
Заниматься подбором сообщения будет класс MessageMaker. В конструктор добавим только with as для чтения словаря:
def __init__(self): with open(«conf.txt», «r» as get_f: self.get_f = get_f.read().split(‘n’)
Для определения дня недели можно использовать datetime.today().weekday() :
Функция array_sort() принимает 2 параметра: массив строк из conf.txt и разделитель, сообщения которого нужно игнорировать. Результатом выполнения будет новый, отсортированный список, из которого можно будет рандомно выбирать любую фразу (функция random.choice() )
Сама сортировка выглядит ужасно примерно так:
def array_sort(self, array, symbol): new_array = [] counter = 0 for string in array: if counter > 0: # Обнуляем счетчик если встречаем такой же символ снова if string == symbol: counter = 0 continue # Пропускаем все строки между указанными разделителями if string == symbol: counter += 1 # Если условия удовлетворяются, то добавляем строку в новый # массив, содержащий только доступные фразы if string != symbol and len(string) > 2 and string[0] != «/»: new_array.append(string) return new_array
Теперь добавим главную функцию, которая возвращает непосредственно выбранную строку:
def select_str(self): get_random_str = self.almost_random_choice() if get_random_str != » and get_random_str != None: return get_random_str return self.select_str()
Поскольку Instagram сам экранирует символы и конвертирует любой тип в str – нет нужды принудительно приводить их вручную.
Тестовый запуск select_str() :
SendMsg – непосредственная отправка сообщения
В классе SendMsg – Login и MessageMaker. А также добавим в конструктор инициализацию родительских классов:
class SendMsg(Login, MessageMaker): def __init__(self, enc_password=False): super().__init__(enc_password=enc_password) MessageMaker().__init__()
И, непосредственно, отправляем сообщение, используя весь функционал. Создаем функцию send_message() с необязательными параметрами:
def send_message(self, random_msg=None): pass
Если сообщение указано прямо в вызове функции – то данные из файла не читаются, и наоборот. Параметр random_msg принимает любую строку, которую хочется отправить в качестве сообщения.
Логинимся и создаем сессию:
log_in = self.login()
Если функция вернула success в словаре, значит, можно продолжать:
if log_in.get(«success») is not None: # Begin
Определяем набор параметров для отправки POST запроса:
# ссылка для отправки сообщения. Нашел ее на Хабре и еще на каком-то сайте. send_mess_to_url = «https://i.instagram.com/api/v1/direct_v2/threads/broadcast/text/» # Генерируем новый uuid v4. Это тоже стандартный функционал Python uuid_v4 = uuid.uuid4() # Проверяем, как формировать сообщение. Если параметр был задан – используется он if random_msg is None: message = self.select_str() else: message = str(random_msg) enc_message = message.encode(«utf-8») # Собственно, тело запроса. Подставляем все параметры. body = (‘text=<>’ + ‘_csrftoken=<>[[«<>»]]»‘ + ‘thread_ids=[«0»]>’).format(enc_message.decode(«latin-1»), self.session.cookies[«csrftoken»], user_id, uuid_v4) # И все заголовки headers = self.session.headers headers[«Content-Type»] = «application/x-www-form-urlencoded» headers[«x-csrftoken»] = self.session.cookies[«csrftoken»] # Ig-App-ID можно найти в заголовках запросов к Инстаграм. Он меняется время от времени, но не часто. headers[«X-IG-App-ID»] = «936619743392459»
Позже добавлю функция проверки X-IG-App-ID. Так как он возвращается в заголовках после успешной авторизации. Не сложно сверить значения и обновить, если требуется.
И отправляем запрос:
send_m = self.session.post(send_mess_to_url, data=body, headers=headers)
Еще желательно определить простейшую функцию логирования, чисто для упрощения отладки. Так как скрипт срабатывает на сервере – хорошо записывать все что происходит:
def _log(*args, **kwargs): if args: for i in args: string = string + ‘ ‘ + str(i) if kwargs: for key, value in kwargs: string = string + ‘ ‘ + str(value) with open(«log.log», «a») as f: print(string, file=f)
Запускаем и смотрим лог:
Менеджер запуска
Для удобства запуска, создадим менеджер скрипта – insta_bot_manager.py и поместим его в папку рядом с insta_bot.py.
Разместим функцию-обработчик и импортируем написанный модуль:
from insta_bot import SendMsg import os def __send__(enc_password=None, random_msg=None): #Создаем экземпляр класса s = SendMsg(enc_password=enc_password) # Отправляем сообщение return s.send_message(random_msg=random_msg) if __name__ == “__main__”: # Можно добавить необязательные параметры enc_password и random_msg __send__()
А также проверку существования файла auth.txt. Потому что запускать это все без данных авторизации не имеет смысла:
def _conf_check(): file_check = os.path.exists( os.path.dirname( os.path.abspath(__file__)) + «/auth.txt») if not file_check: raise Exception(«You must create/or fill the auth.txt file!») return 1
Теперь если auth.txt по каким-то причинам отсутствует — будет поднято исключение.
Автоматизация процесса в Cron
Поскольку я не хотел добавлять insta_bot_manager.py шебанги bash, то решил просто сделать еще один launcher специально для Cron.
В папке со скриптом создаем файл launcher:
$ touch launcher nano launcher
Добавим что-то такое:
#!/bin/bash sleep $[RANDOM%70]m /usr/bin/python3.6 /home/path/to/insta_bot.manager.py
Получается, перед непосредственным запуском скрипт засыпает на рандомное время до 70 минут.
Вообще, при добавлении в cron стоит проследить за переменными окружения. В частности — PWD. Я получал ошибки из-за различия домашней директории и папки со скриптом. Для ее устранения можно приколхозить, в качестве первой, команду cd с полным путем к папке.
Выводы
Стоит быть осторожным, поскольку такая рассылка не совсем легальна и, вроде как, можно хватануть банхаммером Инстаграмма по лицу. Однако, как мне кажется, отправка 1-2 сообщений в сутки на один и тот же ID не вызовет подозрений. Лично я за несколько недель использования бота не получал никаких предупреждений, но мало ли.
Не известна реакция девушки на такое. С одной стороны – бот сделан с любовью и шлет приятности, с другой – это может пойти по статье «Наплевательское отношение». Но пока что полет нормальный, посмотрим, что будет дальше. Возможно в будущем мне придется слать голосовые сообщения 🙂
- instagram api
- отправка сообщений
- python3
- боты для социальных сетей
Источник: habr.com