Кто работает с ВК знает, как там выглядит история платежей: либо выгружаете табличку, где есть только суммарные данные на день, либо смотрите «историю платежей» с детальной информацией по 20 последним операциями, которую нельзя выгрузить.
А чтобы узнать самое ценное: ARPPU, LTV и пр. — нужно выгрузить именно эту табличку.
Можно, конечно, копировать по 20 операций, но если у вас живое приложение, то у вас десятки, сотни, тысячи операций в день, сами можете посчитать, сколько это времени займет.
Да, вопрос решается хорошей сторонней аналитикой, но она не всегда есть. Или не всегда хорошая.
Вот решение (написанное коллегой чудо-веб-разработчиком Георгием Духовенским):
1. Заходите на страницу своего приложения в ВК (лучше через Chrome)
2. Очищаете адресную строку и вместо всего пишите букву J
3. Сразу после нее вставляете следующее:
avascript:(function(){sm=document.getElementById('page_wrap');sm.innerHTML='';csvparse=function(offset,cb){query={act:'get_transactions',offset:offset,id:cur.aid,admin:0,minus:0};ajax.post('editapp',query,{onDone:function(res){console.log(res.length,offset);cb(res);if(res.length<700){alert('Данных больше нет!');return;}setTimeout(function(){csvparse(offset+20,cb)},100);}});};csvparse(0,function(data){sm.innerHTML+=data;},1);}())
4. Мы сразу видим таблички из истории платежей, идущие подряд на одной странице.
5. Дальше ЖДЕМ. Если платежей много — ждать придется долго.
В конце вылезет либо ошибка в стиле самого вконтакта (красный прямоугольник слева) — и тогда надо перезапустить процесс.
Либо подтверждение, что все прошло гладко — тогда вылезет системное окно с текстом «Данных больше нет».
6. Выделяем все что получилось (контрол + А), копируем и вставляем в любимый эксель или что у вас там.
…
Profit! Мы получили данные по всем пользователям, которые легко и быстро можно обработать.
Примечания:
- Весь скрипт работает в вашем браузере. Он никому не посылает ваши данные, так что они в полной сохранности.
- Скрипт работает только с приложениями, в которых вы имеете доступ к истории платежей. Чужие платежи узнать нельзя.
- Хитрость с буквой J нужна, поскольку хром по-умолчанию вырезает слово «javascript» при вставке в адресную строку. Таким образом мы обходим его обрезку.
- Полученные данные лучше сначала отсортировать, чтобы заголовки «Пользователь», «Голоса» и «Время» оказались внизу и их легко было удалить
- Формат даты вконтакта не понимают таблицы гугла. Изящно это обойти нельзя. Неизящные решения табличные гуру и так знают.