Pull to refresh

Comments 34

На чем вы это делаете, какие технологии используете? Давно хочу разобраться с доступом к контакту как крупнейшей русскоязычной социальной сети. Обзорная/вводная статья (а лучше серия статей «по шагам») была бы очень кстати.
Можно ли например провернуть такую штуку: взять список пользователей и список групп, пройтись по ним и найти все комментарии и все лайки пользователя с конкретным ID. Скорость пофиг, все в личных целях.
Я проворачивал это: поиск фото пользователя в альбомах групп в которых он состоит и поиск фото в комментариях написанным им в группах. Однако у меня все медленно искалось (не использовал трюки с распараллеливанием) делалось. Может кто реализует.
skotobaza.org
На дваче эту идею озвучивали, мой друг его реализовал (php + mySQL). Быстро набрав популярность сервер не выдержал и упал (19 тыс пользователей за ночь, всё логгировалось, железо было самое простое). Через некоторое время пришло письмо на его личную почту (которую он нигде не публиковал) с просьбой закрыть сайт от админов группы 40 кг (или от других групп, не помню детали), с угрозой «наши юристы сделают с Вами плохо». Сразу после этого он выложил исходный код на двач и бросил это дело.
Подхватили его друзья, быстро переписали на nodejs и запустили, я так полагаю, на зарубежных серверах.
В свое время их блокировали РосРеестр, но позже их открыли.

Есть даже его интервью, ссылку могу чуть позже скинуть
Возьмите любой язык программирования и делайте на нем. Описание АПИ и доступа к нему есть в самом ВК и очень даже подробные.
Я выкладывал тут статью (теперь она на ММ), где к доступу к ВК использовал вообще 1С. Так что технологии не важны, был бы API:)
для таких вещей API не подходит, т.к. легко будет заблокировать все запросы
А через что вы это предлагаете решать?

Насчет блокировки, автор статьи верно заметил про метод execute. Полностью не спасет, но значительно облегчит задачу — это точно.
На чем вы это делаете, какие технологии используете?

Пишу код на питоне.
Давно хочу разобраться с доступом к контакту как крупнейшей русскоязычной социальной сети. Обзорная/вводная статья (а лучше серия статей «по шагам») была бы очень кстати.

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

Да, думаю, можно.
Присоединюсь к вопросу.
А еще слева, параллельно зелёной идёт еле-заметная синяя.
Не знаю, какой-то артефакт укладки. Укладка — полуслучайный процесс. Сейчас уложил ещё раз, эта хорда пропала.
Вообще говоря, такого быть не должно. А можно несколько таких укладок привести для сравнения?
Если обоснуете почему, займусь. Можете скачать граф (ссылка ниже) и поукладывать
Есть мысль, что алгоритм укладки не очень хороший, вот и интересуюсь.
Выложите архивчик с пользователями / группами? vk.execute конечно, хорош, но ждать два дня как-то… А поиграться хочется)
Совсем уж наглая просьба
  • И картинку графа в оооочень большом разрешении.
yadi.sk/d/1FMLAtShiEg5L — в таблице две колонки: номер группы и номер пользователя. Рассматривались группы с числом пользователей от 5000 до 10000 человек. Данные недельной давности.
yadi.sk/d/Yv3cCMkBiEgDS — граф, который можно открыть в Гефи и смотреть в любом разрешении.
Примерно так будет выглядеть граф взаимосвязей внеземных колоний через миллион лет.
Спасибо за статью. Бигдата и соцсети — это всегда интересно.
Но у меня небольшие сомнения вызвал тот факт, что 99% пользователей состоит в 15 групп и менее. Я тут проводил одно исследование, правда, только по пользователям из Белоруссии (не думаю, что для России и других стран картина принципиально иная), так вот по моим данным распределение будет такое:

image
Наверное, это потому что в тексте идёт речь о выборке групп размером от 5000 до 10000 человек. Грубо говоря, если добавить в выборку МДК, все сразу станут состоять в 16 группах.
Если честно, не вижу причин, почему так должно происходить. Распределение должно быть примерно одинаковое, что для подписчиков крупных групп, что для маленьких.
Возьмём выборку из трёх групп Киномания, МДК и Чёткие приколы. Сколько пользователей будут состоять во всех трёх из них? Много. Теперь возьмём выборку из Любители стрижки каре!, НЕФТЯНИКИ, Любопышка- мамы и папы Ярославля. Сколько будут состоять в этих трёх? Мало. Вот такая идея
Это понятно. Но уменьшение размера выборки не должно (по идее) приводить к такому изменению распределения признака.

Либо тут какая-то очень занятная взаимосвязь. Те, кто состоит в крупных группах, как правило подписаны на большое количество пабликов/групп. Те, кто состоит в небольших группах, состоят в небольшом количестве пабликов/групп.
Уменьшение выборки не должно к этому приводить, если выборка равномерная. У меня неравномерная, у меня только группы среднего размера
на мой взгляд, надо строить нормальное распределение (Гаусса) и смотреть. Круговая диаграмма с делением больше/меньше одной величины — это деление, а не распределение.
Распределение по каким величинам? Почему Гаусса, мы же не знаем, нормальное оно или нет.

Да, это деление, но тем не менее, оно даже близко не соответствует тому делению, что указано в статье. 35 к 65, это все же слишком далеко от 1 к 99.

На группах от 5000 до 10000 распределение такое
Стоп. А как вы считали показатель «количество групп пользователя»?
А какие есть варианты? Берём пользователя, смотрим в каких группах из выборки он состоит
Ага, теперь я понял, почему у нас так различаются данные:)

Я то брал пользователя из выборки и получал количество подписок, в которых он состоит с помощью users.getSubscriptions

Тогда вы, конечно, правы. Ничего странного в таком распределении нет. Извиняюсь, что сразу не додумался о разнице в подходах.
Ваш способ сбора групп, а потом проверки на вхождение в нее юзера должен быть лучше, чем users.getSubscriptions — я замечал, что он выдает не все группы, в которые юзер входит, почему не знаю.
У VK Api вообще порой бывают странности.
Но в целом, к этому методу у меня нареканий не было. По крайней мере, количество пабликов, на которые подписан человек, он выдавал точно. А именно они меня и интересовали.
Only those users with full accounts are able to leave comments. Log in, please.