Поиск по сайту:

Ставьте лайки фотографиям в Instagram с использованием Selenium и Python.


Инстаграм — чрезвычайно успешная социальная сеть, насчитывающая более миллиарда участников. Это любимая платформа для ученых, маркетологов и разработчиков из-за ее мощного API и доступности данных. В этой статье с помощью 2-3 примеров мы рассмотрим, как программно ставить лайки фотографиям в Instagram с помощью Python и Selenium.

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

Начало работы: установка и настройка

Прежде чем приступить к написанию кода, вам необходимо настроить среду. Нужны Python и Selenium. Python можно получить с официального сайта программы, а pip можно использовать для настройки Selenium:

pip install selenium

Кроме того, загрузите самую последнюю версию ChromeDriver, необходимого инструмента для взаимодействия Selenium с Chrome.

Использование Selenium для Instagram

Selenium — эффективный инструмент для удаленного управления веб-браузером. Он хорошо работает для таких действий, как нажатие и ввод текста, которые мы будем использовать для лайков фотографий в Instagram, требующих прямого контакта с браузером.

Использование Python и Selenium для лайкания изображений в Instagram

Пошаговое руководство по написанию скрипта Python для автоматического лайкания фотографий из Instagram представлено ниже —

Шаг 1. Импорт необходимых библиотек

from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

Шаг 2: Получите доступ к Instagram

Нам необходимо зайти на сайт Инстаграм и авторизоваться, используя свои данные. С помощью Selenium мы можем автоматизировать эту процедуру 

driver = webdriver.Chrome('path_to_your_chromedriver')

driver.get('https://www.instagram.com/')

# Pause for 3 seconds to let the page load
time.sleep(3)

# Locate the username and password fields and input your credentials
username = driver.find_element_by_name('username')
username.send_keys('your_username')

password = driver.find_element_by_name('password')
password.send_keys('your_password')

# Click on the login button
password.send_keys(Keys.RETURN)

Шаг 3. Перейдите на нужную страницу.

Чтобы поставить лайк их изображениям, давайте теперь перейдем на конкретную страницу в Instagram. «instagram_page» следует заменить именем пользователя соответствующей страницы 

# Pause for 3 seconds to let the page load
time.sleep(3)

# Navigate to the specific Instagram page
driver.get('https://www.instagram.com/instagram_page')

Шаг 4. Поставьте лайк фотографиям

Сначала мы выберем каждое изображение на странице, а затем поставим лайк всем —

# Pause for 3 seconds to let the page load
time.sleep(3)

# Find all the picture elements on the page
pictures = driver.find_elements_by_class_name('_9AhH0')

for picture in pictures:
   # Click on each picture
   picture.click()

   # Pause for 3 seconds to let the picture load
   time.sleep(3)

   # Click on the like button
   like_button = driver.find_element_by_class_name('fr66n')
   like_button.click()

   # Close the picture
   driver.find_element_by_class_name('Igw0E').click()

   # Pause for 3 seconds before moving to the next picture
   time.sleep(3)

Пара примеров

1. Лайки картинок по хэштегу

На последней иллюстрации мы зашли на страницу определенного пользователя. Давайте теперь посетим страницу с определенным хэштегом и поставим лайк изображениям там 

# Navigate to the specific Instagram hashtag page
driver.get('https://www.instagram.com/explore/tags/hashtag')

Далее процедура лайкинга выполняется так же, как и раньше:

# Pause for 3 seconds to let the page load
time.sleep(3)

# Find all the picture elements on the page
pictures = driver.find_elements_by_class_name('_9AhH0')

for picture in pictures:
   # Click on each picture
   picture.click()

   # Pause for 3 seconds to let the picture load
   time.sleep(3)

   # Click on the like button
   like_button = driver.find_element_by_class_name('fr66n')
   like_button.click()

   # Close the picture
   driver.find_element_by_class_name('Igw0E').click()

   # Pause for 3 seconds before moving to the next picture
   time.sleep(3)

2. Ставить лайк только определенному количеству фотографий

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

# Define the number of pictures to like
num_pictures_to_like = 5

# Find all the picture elements on the page
pictures = driver.find_elements_by_class_name('_9AhH0')[:num_pictures_to_like]

for picture in pictures:
   # Click on each picture
   picture.click()

   # Pause for 3 seconds to let the picture load
   time.sleep(3)

   # Click on the like button
   like_button = driver.find_element_by_class_name('fr66n')
   like_button.click()

   # Close the picture
   driver.find_element_by_class_name('Igw0E').click()

   # Pause for 3 seconds before moving to the next picture
   time.sleep(3)

Количество изображений, которые мы можем выбрать, в этом скрипте ограничено тем, что возвращаются только верхние n элементов из коллекции фотографий.

Заключение

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

Selenium и Python вместе предлагают мощный набор инструментов для веб-автоматизации. Примеры, использованные для иллюстрации данного руководства, лишь поверхностно отражают возможности этих технологий.

Статьи по данной тематике: