{"id":1064,"title":"\u041f\u0440\u043e\u0439\u0434\u0438\u0442\u0435 \u044d\u0442\u043e\u0442 \u0442\u0435\u0441\u0442, \u043f\u043e\u043a\u0430 \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u044e \u0438\u0437 \u0435\u0434\u044b \u043d\u0435 \u0437\u0430\u043f\u0440\u0435\u0442\u0438\u043b\u0438","url":"\/redirect?component=advertising&id=1064&url=https:\/\/tjournal.ru\/special\/kaleidofood&placeBit=1&hash=f30606208ead4bb67ee3624f20be3cd7a9b9c0ae8b2bd8a40218541848752d25","isPaidAndBannersEnabled":false}

Ширяев был в ярости, когда узнал

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

В документации к API в разделе WebSocket был список нескольких публичных WS каналов (сейчас удалён):

wss://tjournal.ru/chan/api wss://tjournal.ru/chan/system wss://tjournal.ru/chan/live:private

Раз описания нет, то просто подключимся и посмотрим, что сайт присылает (node.js):

const WebSocket = require('ws'); const url = 'wss://tjournal.ru/chan/api'; const ws = new WebSocket(url, { perMessageDeflate: false }); ws.on('open', function open() { ws._socket.setKeepAlive(true, 0); console.log(`# opened ${url}`); }); ws.on('message', function incoming(data) { console.log(data.trim()); });

Судя по полю "type", нам приходят оповещения о голосах за комментарии и публикации, оповещения о новых публикациях, изменение числа подписчиков подсайтов и, возможно, что-то ещё.

Меня заинтересовало поле "user_hash". Это похоже на уникальный идентификатор пользователя. Ищем в документации его упоминание:

Результат хэша похож на SHA-256, что делает маловероятным его обращение обратно в ID пользователя, но я заметил, что хэши для оценок комментариев и постов совпадают, а оценки комментариев видны всем. Значит сопоставив хэши из оценок комментариев к ID пользователей, можно будет видеть, кто и как оценивает публикации.

Используя метод "getCommentLikes" из документации, получаем лайки комментария, используя ID комментария из сообщения вебсокетов:

Тут очевидно, что сопоставить кучу хэшей и несортированный список лайков невозможно, поэтому начнём с комментариев с одним лайком:

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

Так как писать специальный сайт с фильтрами и поиском лень, то всё это связываем с ботом в телеге и публикуем в приватный канал с хэштегами для поиска:

Результат можно почитать тут:

В конкурсе я, кстати, победил, но не с этим ботом.

Другие мои боты:

Ставьте лайки, подписывайтесь на канал @govnokoder, присылайте ваши донаты.

0
82 комментария
Популярные
По порядку
Написать комментарий...
Военный меч

Чекальский против Зоибаны. Следовательно, Человек-Человек — твинк Чекальского

Ответить
15
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
1
Развернуть ветку
Военный меч

Ты про мейлру?

Ответить
18
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
6
Развернуть ветку
Военный меч

Это потому, что ты гей.

Ответить
21
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
4
Развернуть ветку
Сергей Васильев

Ты весь день про свои ебаные истории рассказываешь, не надоело?

Ответить
5
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
10
Развернуть ветку
Инвестиционный корабль

Комментарий удален по просьбе пользователя

Ответить
5
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
2
Развернуть ветку
Призванный блик

Комментарий удален по просьбе пользователя

Ответить
1
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
0
Развернуть ветку
Призванный блик

Комментарий удален по просьбе пользователя

Ответить
0
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
4
Развернуть ветку
Призванный блик

Комментарий удален по просьбе пользователя

Ответить
0
Развернуть ветку
Внезапный велосипед

Комментарий удален по просьбе пользователя

Ответить
1
Развернуть ветку
Комплексный цвет

Комментарий удален по просьбе пользователя

Ответить
0
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
0
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
1
Развернуть ветку
Дизайнер Павленко

Слава богу Комитет не норм по мнению Климова

Ответить
1
Развернуть ветку
Военный меч

в СЖВ мире - да?

Ответить
0
Развернуть ветку
испанский смех

что я представляю, когда вижу твой ник каждый раз:

Ответить
2
Развернуть ветку
Военный меч

Что это за кабель?

Ответить
1
Развернуть ветку
испанский смех

toslink же

Ответить
0
Развернуть ветку
Elian Kavinsky

Он вроде пофиксил тогда. Вы снова нашли способ узнать, от кого оценки? 

Ответить
0
Развернуть ветку
Военный меч

Кто мы-то? Я тут один нахой.

Ответить
24
Развернуть ветку
Elian Kavinsky

Аа, ну ок. Ты нашел новый способ или это прост исторический пост?

Ответить
0
Развернуть ветку
Военный меч

Чтобы помнили и выебнуться в очередной раз.

Ответить
8
Развернуть ветку
Таблетка Галоперидола

Забыл питек-бота упомянуть, самую большую гордость

Ответить
1
Развернуть ветку
Военный меч

Не забыл.

Ответить
3
Развернуть ветку
Таблетка Галоперидола

Точно, проглядел. А в личке тогда пиздел что не твоё

Ответить
3
Развернуть ветку
Военный меч

Так я вообще пиздабол. Что-то не так?

Ответить
11
Развернуть ветку
Таблетка Галоперидола

Всё в порядке. Считаю тебя мудаком просто.

Ответить
1
Развернуть ветку
Военный меч

Неслабо тебя порвало.

Ответить
6
Развернуть ветку
Военный меч

Комментарий удален по просьбе пользователя

Ответить
0
Развернуть ветку
Таблетка Галоперидола

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

Ответить
1
Развернуть ветку
Военный меч

А они до сих пор не перешли на еДНС что ли? Просто лень смотреть.

Ответить
0
Развернуть ветку
Военный меч

Сомневаюсь, что хотя бы планировали.

Ответить
2
Развернуть ветку
Военный меч

SOOOOQ

Ответить
0
Развернуть ветку
Военный меч

А я думаю, чего так лагает.

Ответить
0
Развернуть ветку
испанский смех

у тебя на аве киркоров в одеянии дракулы?

Ответить
0
Развернуть ветку
Военный меч

Доктора Стрэнджа.

Ответить
0
Развернуть ветку
испанский смех

или как перестать бояться и полюбить атомную бомбу?

Ответить
2
Развернуть ветку
Военный меч

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

Ответить
0
Развернуть ветку
испанский смех

но он болгарин!

Ответить
0
Развернуть ветку
Военный меч

Но акцент-то британский!

Ответить
0
Развернуть ветку
Военный меч

Англия — издавна славянская страна.

Ответить
1
Развернуть ветку
испанский смех

@Denis Shiryaev почините дублирование отправки комментов, за сегодня уже дважды было, macos 10.14.6 (18G103) Opera 63.0.3368.107

Ответить
0
Развернуть ветку
Военный меч

Это же Стренж.

Ответить
0
Развернуть ветку
испанский смех

лав?

Ответить
0
Развернуть ветку
Военный меч
Ответить
4
Развернуть ветку
испанский смех

бля, внатуре бердосыч!

Ответить
0
Развернуть ветку
Военный меч

А у тебя тоже сначала делает отступ при написании коммента?

Ответить
0
Развернуть ветку
испанский смех

нет вроде, либо не замечал

Ответить
0
Развернуть ветку
Военный меч

Но это вероятно чисто моё явление, потому что я в хвост и гриву поимел брувзер

Ответить
0
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
0
Развернуть ветку
Elian Kavinsky

Намекаешь, что это ты пофиксил дыру?

Ответить
7
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
8
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
0
Развернуть ветку
Elian Kavinsky

Ничего

Ответить
0
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
0
Развернуть ветку
Elian Kavinsky

В прямом. А что ты ждешь? За дырками - это не ко мне )

Ответить
0
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
0
Развернуть ветку
Elian Kavinsky

Есть только такая бгг

Ответить
0
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
1
Развернуть ветку
Marko

А ты хорош! Подписался на тебя...

Ответить
7
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
1
Развернуть ветку
Marko

Который из?

Ответить
1
Развернуть ветку
Дорожный Мика

Комментарий удален по просьбе пользователя

Ответить
5
Развернуть ветку
Emile Zäkiev

Боты во вторую мировую войну: ищут статьи, присылают песни по запросу.
Боты сейчас: позволяют посмотреть, кто дизлайкнул твою статью на ТЖ.

Ответить
4
Развернуть ветку
Военный меч

upd: А ведь Денис извинился! 

Ответить
0
Развернуть ветку
Военный меч

Всё равно нашы победили.

Ответить
3
Развернуть ветку
Военный меч

Деды ковыряли!

Ответить
11
Развернуть ветку
Мистер Блондин

На что потратил 100 кусков?

Ответить
0
Развернуть ветку
Военный меч

Я ведь уже писал, что на кофе и маффин из шоколадницы.

Ответить
4
Развернуть ветку
Олег Брюханов

Не очень завидная цель траты:(

Ответить
–1
Развернуть ветку
Военный меч

Это уже пофикшено или как?

Ответить
0
Развернуть ветку
Военный меч

Да.

Ответить
0
Развернуть ветку
Интригатор. Провокан
Ответить
3
Развернуть ветку

Комментарий удален

Развернуть ветку

Комментарий удален

Развернуть ветку
Военный меч

Нешто гениальное ёптыть. Не понимаю, чего ребята так возбудилисб тогда

Ответить
0
Развернуть ветку
Данііл Ся

.000000ж7⁷щ

Ответить
0
Развернуть ветку
Читать все 82 комментария
null