@romellow

Подписан ли человек на такую группу и оставлял ли он там фотографии?

Доброго времени суток! Можно ли как-то через VK API узнать подписан ли человек на такие же группы что и я и оставлял ли он там фотографии? Как это можно реализовать на JS? Заранее спасибо.
  • Вопрос задан
  • 1077 просмотров
Решения вопроса 1
sergiks
@sergiks Куратор тега PHP
♬♬
Метод users.getSubscriptions() возвращает подписки юзера. Если user_id не указывать, вернёт ваши подписки. Вот такой нехитрый код в процедуре execute() (прямо на той странице его вставьте и «Выполните») вернёт два массива: ваши и его id групп:
var uid=12345; 
return {
  "my": API.users.getSubscriptions().groups.items,
  "her": API.users.getSubscriptions({"user_id":uid}).groups.items
};

В первой строке задаётся id "того юзера", с кем сравнивать.

Эти два массива остаётся сопоставить. Можно в скретч-паде браузера выполнить следующий код:
var r = 
{"response":.....} // тут целиком ответ из метода execute
;                  // и точка-с-запятой в конце.
var common = [];   // сюда попадут id общих групп
for(var i=0;i<r.response.my.length;i++){
  if( !!~r.response.her.indexOf( r.response.my[i])) 
    common.push(r.response.my[i]);
}
common;   // если в Scratchpad Firefox'а нажать Ctrl+L, 
          // код выполнится а в коммент вставится содержание этого массива


Постил ли фотографии – надо просмотреть всю фото методом photos.getAll(). Параметр owner_id – по очереди, каждой из общих групп. У каждой фотографии смотреть значение поля user_id – нужны только те, где оно равно искомому юзеру.

За один вызов метода можно получить до 200 фотографий, поэтому добавляем параметр count=200 и параметром offset листаем по 200 снимков вглубь истории. Можно опять методом execute зарядить сбор – так будет по 25*200 = 5000 фото за один вызов.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
iiiBird
@iiiBird
Пока ты спишь - твой конкурент совершенствуется
узнать подписан ли человек на такие же группы что и я

https://vk.com/dev/users.search

и оставлял ли он там фотографии?

если посты анонимны - не узнаешь. если нет - через https://vk.com/dev/wall.get парсишь посты на наличие этого юзера
если по альбомам группы искать - https://vk.com/dev/photos.getAlbums

Как это можно реализовать на JS?

https://vk.com/dev/Javascript_SDK
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы