Как создать общие друзья в вк. Находим общих друзей людей с использованием VK API

Социальная сеть «ВКонтакте» является одним из самых популярных интернет-проектов во всей России и странах постсоветского пространства. Каждый день из года в год ресурсом пользуются миллионы пользователей, которые заходят на сайт vk.com, чтобы не только пообщаться друг с другом, но и узнать новости, послушать любимые аудиозаписи, посмотреть фильм или сериал, узнать что-нибудь интересное и даже наметить, куда пойти за обновлением гардероба.

На данный момент каждый может добавить себе в друзья до 10 тысяч других «обитателей» социальной сети, а, как свидетельствует статистика, у среднестатистического пользователя ресурса в друзьях содержится около 200-300 человек. Тем не менее, просматривая список своих друзей «ВКонтакте» можно неожиданно для себя обнаружить, что располагаются они в разном порядке и порой могут меняться местами. Почему так происходит и как формируется весь этот список?

Как было раньше

Прежде чем дать ответ на заданный выше вопрос, хотелось бы напомнить, как формировался список друзей «ВКонтакте» несколькими годами ранее. Еще несколько лет тому назад люди, отображающиеся в списках друзей пользователя, сортировались по рейтингу. Тут все понятно: чем выше был рейтинг страницы пользователя, тем выше он отображался в списке друзей. Рейтинг можно было получить за заполнение информации на собственной странице или за покупку дополнительных голосов. Позже от рейтинга было решено отказаться, чем очень сильно были расстроены пользователей, которые купили большое количество голосов и/или подарили их другим «обитателям» социальной сети.

Как формируется список друзей сейчас

Сейчас же список друзей в самой популярной социальной сети формируется иным способом : на первые позиции в списке выступают те пользователи, с которыми вы общаетесь чаще всего. Тем не менее, подобная сортировка списка друзей ВК может озадачить некоторых пользователей. Например, некоторые удивляются, почему человек, с которым общение бывает крайне редко, находится так высоко в списке. Ответ прост – при формировании списка учитываются не только сообщения, но и лайки, просмотры страниц, ответы, комментарии к записям. Получается, что первым в вашем списке друзей может стать не только тот пользователь, с которым вы не так уж много и общаетесь.

Однако есть из этого правила одно небольшое исключение: пользователи, которых вы не так давно добавили в список своих друзей, располагаются обычно на 5 или 6 месте списка для того, по словам разработчиков соцсети, чтобы вы не упустили их из виду.

Порядок расположения друзей, которые находятся на сайте

Теперь стоит упомянуть о том, как сортируются пользователи из списка друзей онлайн. Тут по большому счету точно такой же принцип: расположение друзей сходится с тем, что и в общей последовательности, правда показываются лишь те пользователи, которые онлайн. Если вы пользуетесь опциями «Коллеги», «Лучшие друзья» и им подобными, то распределение списков друзей в них также будет аналогичным.

Как располагается список друзей у других пользователей

Если ситуация с расположением собственных друзей уже более-менее понятна, то как в таком случае быть с друзьями других пользователей, которых мы видим с собственной страницы? Тут все немного по-другому: распределение друзей здесь происходит по количеству общих знакомых с тем человеком, чью страницу вы просматриваете. В том случае, если общих друзей у вас нет, список друзей формируется согласно дате регистрации пользователей на сайте.

Можно ли изменить порядок?

После того, как уже стало все понятно насчет сортировки друзей «ВКонтакте», можно поговорить о том, можно ли изменить данный порядок. К сожалению, разработчиками социальной сети данная функция не была предусмотрена, поэтому изменить порядок расположения друзей самостоятельно нельзя.

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

Привет, хабраюзер.
Однажды у меня возникла необходимость найти человека, зная его внешний вид и зная о его членстве в определенном клубе. Также я владел адресами(вконтакте) страниц двух других членов клуба. Почти наверняка искомый человек был у каждого из них в друзьях. Решить эту проблему можно было разными путями. В статье я напишу о том, как мной было реализовано решение с использованием vk.com API.
1.Задача
Сделать сервис, который будет находить всех общих друзей двух отдельно взятых пользователей, не требуя верификации и аккаунта в социальной сети для пользователей сервиса. Получить данные об общих друзьях:
  • фотография
Реализовать задание на базе API вконтакте. Написать отельный класс для этого.
2.Решение
2.1.Определяем необходимые методы API
Заходим в список методов API. И поискав, находим то, что нам нужно.

Для получения друзей пользователя есть метод friends.get .
friends.get - возвращает список идентификаторов друзей пользователя или расширенную информацию о друзьях пользователя (при использовании параметра fields).

И, что важно, в рамках решения поставленной задачи это открытый метод, не требующий access_token.

Обязательный параметр только один:

Используя данный метод, можно получить информацию обо всех друзьях каждого из двух наших множеств, но такой подход не будет оптимальным. Пользователь А может иметь 2000 людей в друзьях, пересекаться с друзьями пользователя В будут только 3 человека. В таком случае информация о 1997 пользователях будет нам ненужной, и ресурсы, затраченные на её получение, будут потрачены впустую.
Мы будем запрашивать исключительно идентификаторы пользователей, и получив нужные нам номера(которые принадлежат множеству А и В), уже по ним выбирать информацию.

Для получения информации о пользователе есть метод users.get .
users.get - Возвращает расширенную информацию о пользователях.

Данный метод также не нуждается в access_token, то есть идеально подходит для нашей задачи.


В user_ids мы передадим массив идентификаторов пользователей, которые встречаются в обоих множествах.
Мы хотим получить только аватар размером 100*100, для этого в параметре fields передадим значение photo_100.

2.2.Переходим к практической стороне
Я написал простой класс на php:

Class VkFriends { public function clean_var($var) { $var = strip_tags($var); $var = preg_replace("~\D+~", "", $var); $var = trim($var); return $var; } public function get_friends($u_id) { $friends = file_get_contents("https://api.vk.com/method/friends.get?user_id=".$u_id); $friends = json_decode($friends); if(!isset($friends->error)){ return $friends; }else{ return ""; } } public function mutual_friends($friends) { $mutual = array_intersect($friends->response, $friends->response); if(!empty($mutual)){ return $mutual; }else{ return ""; } } public function get_users_info($users) { $u_ids = implode(",",$users); $u_info = file_get_contents("https://api.vk.com/method/users.get?user_ids=".$u_ids."&fields=photo_100"); $u_info = json_decode($u_info); return $u_info; } public function view_user_info($u_info) { $uid = $u_info->uid; $first_name = $u_info->first_name; $last_name = $u_info->last_name; = $u_info->photo_100; print("

"); } public function view_users_info($users_info) { for($i=0;$iresponse);$i++){ $this->view_user_info($users_info->response[$i]); } } }

Теперь смотрим на наш класс в действии:

$vkf = new VkFriends; $u_id = $vkf->clean_var($_POST["u1"]);//clean variables from POST $u_id = $vkf->clean_var($_POST["u2"]); if(($u_id!="")&&($u_id!="")){ echo "

"; $friends = $vkf->get_friends($u_id);//getting friends list from user with u_id $friends = $vkf->get_friends($u_id); if(($friends!="")&&($friends!="")){ $mutual = $vkf->mutual_friends($friends);//create new array from intersect arrays if($mutual!=""){ $users_info = $vkf->get_users_info($mutual);//getting info about users that are mutual $vkf->view_users_info($users_info);//view information about selected users }else{ print("

Сейчас практически все пользователи Интернета имеют аккаунты в Одноклассниках, Фейсбуке, Инстаграме, ВКонтакте. Соцсети развиваются, постоянно предлагая новейшие сервисы и функции. А вот опция “добавить в друзья” была изначально.

В принципе, социальные платформы как раз и создавались с целью общения людей на расстоянии.

Как добавить в друзья в ВК


Рис.1. Ищем и добавляем в друзья ВКонтакте
  • 1 на рис.1 – в левой колонке есть ссылка «Друзья». Если кликнуть по этой ссылке, то можно увидеть своих друзей, а также воспользоваться ссылкой «Написать сообщение» друзьям.
  • 2 на рис. 1 – синяя кнопка «Найти друзей»,
  • 4 – можно установить параметры для поиска друзей: город, возраст, пол.
  • 5 на рис. 1 – «Возможные друзья», где в первую очередь предлагается добавить тех, у кого есть с Вами общие друзья.

ВКонтакте есть ограничения на добавление друзей – не более 50 заявок в сутки, иначе функцию добавления друзей могут заблокировать или даже забанить аккаунт.

Справка с официального сайта ВКонтакте «Добавление друзей»

Как добавить в друзья в Фейсбук

  1. Побеспокойтесь о чистоте и актуальности своего профиля.

Время от времени просматривайте и при необходимости корректируйте свой профиль в соцсети.

Проанализируйте, какая личная информация будет доступна вашим будущим друзьям.

Своевременно добавляйте новую информацию и удаляйте неактуальные и устаревшие данные.

  1. Подпишитесь на пользователя в случае, если он достиг лимита на добавления в друзья.

Оформив подписку, вы станете подписчиком и сможете отслеживать события в его жизни и отправлять при надобности сообщения.

Навсегда остаться в роли наблюдателя или стать в последующем другом – зависит полностью от Вас.

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

Ключевыми параметрами поиска при заполненной информации в профиле ВК являются следующие данные:

  1. Школа, ВУЗ либо иное учебное заведение, место работы. Если вы указали такую информацию о себе, то в списке сразу определяются возможные друзья: ваши одноклассники, коллеги по работе, сослуживцы. Кого-то из них вы наверняка знаете в реальной жизни.
  2. Общие друзья. Если у вас уже есть хотя бы один друг, то пользователи из его френд-листа также будут присутствовать в этом разделе. Они могут отбираться туда случайно либо по некоторым критериям схожести с вами (регион, членство в одних сообществах и т. д.).
  3. Ваша активность на сайте. При частом посещении групп, пабликов, при общении в комментариях и регулярном просмотре личных страниц отдельных людей, те, на ком эта деятельность сфокусирована, могут быть добавлены в раздел возможных друзей.
  4. Анализ интернет-активности (спорный момент). Администрация ВК всячески открещивается от сбора сторонней информации о пользователях. Однако многие заявляют, что даже при создании пустой странички с придуманным именем без указанной информации, в этом разделе можно найти друзей со своей реальной странички.

Это свидетельствует о том, что система сканирует cookie-файлы либо другие цифровые следы в браузере.

Это быстрый и удобный способ заполнить свой список контактов нужными людьми.

Возможные друзья просматриваются несколькими простыми шагами. Рассмотрим их на примере веб-версии ВК для персонального компьютера. В установленном на телефон мобильном приложении порядок действий будет тот же, разница лишь в интерфейсе.

  1. Переходите в раздел «друзья» и вы увидите в нижней правой стороне колонку «возможные друзья».

Там случайным образом должен формироваться список из 5-ти человек.

  1. Чтобы увидеть полный перечень, нажмите внизу «показать всех».




Просмотров