Скрипт для автоматического проставления лайков аватар в ВКонтакте

Скрипт для автоматического проставления «лайков» аватар пользователей страниц социальной сети «ВКонтакте» по заданным параметрам поиска.
Скачать скрипт

Сайт программы

Присоединяйтесь к нам в ВК:
https://vk.com/humanemulator
https://vk.com/xscripts
https://vk.com/club130582676

автоматизация социальных сейтей с помощью Human Emulator

Скрипт для нажатия «like» заглавной фотографии аккаунта из поиска Вконтакте

Скрипт для автоматического проставления «лайков» аватар пользователей страниц в Вконтакте по заданным параметрам поиска.

В этой статье мы рассмотрим скрипт для автоматического лайканья аватар пользователей в Вконтакте, по заданным параметрам поиска. Начнем, как обычно с подготовительной части и настроек скрипта:

Настройки скрипта:

// скрипт работает в режим отладки
$dbg = true;
// логин и пароль для входа в ВК(необходимо заполнить)
$login = "";
$pass = "";
// время ожидания
$wt = 5;
$wt_long = 10;
// путь к необходимой группе(необходимо заполнить)
$group = "";
// количество лайков за один проход
$likes = 3;
// текущее количество лайков
$cur_likes = 0;
// путь к обработанным анкетам
$path_to_ankets = "res\\ankets.txt";

для начала пропишем создание дополнительной вкладки — в ней мы будем переходить по полученным линкам на профили пользователей ВК.

// открыть дополнительную вкладку
$browser->set_count(2);
$browser->set_active_browser(0);
sleep($wt);

echo "Переходим на сайт ВК<br>";
$browser->navigate("http://vk.com/");
sleep($wt_long);

echo "Авторизируемся<br>";
$input->send_keyboard_input_by_name("email", $login);
sleep($wt);
$input->set_focus_by_name("pass");
$input->send_keyboard_input_by_attribute("id","index_pass",true, "$pass");
sleep($wt);
echo "нажимаем кнопку Войти<br>";
$btn->click_by_inner_text("Войти",false);
$btn->click_by_name("index_login_button");
sleep($wt_long);

echo "Переходим в нужную нам группу<br>";
$browser->navigate($group);
sleep($wt_long);

получим кол-во найденных людей (число, которое выдает поисковик ВК), оно нам понадобиться для прокрутки страницы.

echo "начинаем прокручивать скролл вниз<br>";
$all_of_member_old = 0;
$cur_scroll = 0;
while (true)
{
	// получаем номера на всех подписчиков
	$arr_of_names = $div->get_all_inner_texts_by_attribute("class", "labeled name", true);
	$all_of_member = count($arr_of_names);

	echo $all_of_member . "<br>";
	if ($all_of_member_old == $all_of_member)
	{
		$cur_scroll++;
	}	
	else 
	{
		$cur_scroll = 0;
	}

	if ($cur_scroll >= 10)
	{
		echo "если количество подгруженных анкет такое же как и в предыдущий раз<br>";
		echo "уже 10 циклов в подряд, то скорее всего мы дошли до конца страницы<br>";
		break;
	}
	$all_of_member_old = $all_of_member;
	
	if ($all_of_member > 200)
	{
		echo "Количество подписчиков более 200<br>";
		break;
	}
	echo "прокручиваем колесо<br>";
	$mouse->wheel(-rand(14, 24), $window_width/2, $window_height/2);
	sleep(4);
}

т.е. получаем линк по имени пользователя с главной, переходим по линку в доп. вкладке, затем возвращаемся на главную и так по всем найденным страницам!

В итоге вся логика скрипта состоит из 9 пунктов:
1) переходим на сайт и авторизируемся;
2) переходим на нужную группу;
3) получаем всех пользователей группы;
4) получаем всех пользователей группы в «online»;
5) прокручиваем страницу вниз для максимальной прогрузки данных о найденных контактах (не более 1000);
7) получаем по каждому контакту ссылку на профиль;
8) используя дополнительную вкладку переходим по полученным линкам на аккаунт пользователя;
9) после перехода на страницу пользователя — кликаем по аватару и ставим лайк.

Примечания:
1. Анкеты которые «лайкались» ранее повторно не используются. При использовании анкеты, уникальный путь к ней сохраняется в папке res/ankets.txt. Соответственно если повторно эта анкета встречается в другой группе или же скрипт повторно запускается для этой же группы он предварительно проверяет лайкали ли мы ранее эту анкету. Если да, то пропускаем ее и идем далее;
2. Бываем что группа маленькая и количество онлайн-пользователей на данный момент менее 1000 — скрипт анализирует если количество подгруженных пользователей не изменно 10 скролов — вероятнее всего мы дошли до низа списка и подгрузили всех пользователей группы находящихся в режиме «online». Производится выход и скрипт переходит к следующему шагу — «лайкам» фотографий.

Видео работы скрипта автоматического нажатия «like» Вконтакте

Скрипт написан 06.12.2018 и оптимизирован под версию 7.0.26

скачать скрипт