Pull to refresh
Контур
Делаем сервисы для бизнеса

Экспортируем комментарии и оценки из Google Play для анализа

Reading time3 min
Views10K
Не все знают, но в Google Play существует вполне легальная возможность выгрузить все комментарии и оценки к своему приложению в отдельный CSV-файл, после чего заняться каким-нибудь анализом, не доступном из гугловской системы. Но делается это с помощью внешней утилиты gsutil, написанной на Python’е. Так что в этом посте будет небольшая инструкция по тому, как это сделать.

  1. Инсталлируем python 2.6 или 2.7, если его ещё нет в системе. Инструкция по установке на официальном сайте, там нет ничего сложного для любой ОС.

  2. Скачиваем и распаковываем в любую папку gsutil (прямая ссылка на zip, прямая ссылка на tar.gz)

  3. Открываем консоль в папке с gsutil и продолжаем работать в ней. (Для windows – shift+правый клик в этой папке и выбор “Открыть окно команд”, пользователи более популярных и сами знают, как это сделать, раз уж сумели их установить)

  4. Выполним команду
    gsutil.py update

    для очевидных целей. Обычно в архиве уже лежит свежая версия, но бывает всякое.



  5. Выполним команду
    gsutil.py config



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

  6. Перейдя по ссылке мы попадём на страницу, на которой разрешим приложению работать с нашим аккаунтом.


  7. И скопируем код в консоль




  8. В ответ получим ещё одно сообщение, с предложением выбрать проект по умолчанию в Google Developer Console, но это делать не обязательно, тем более, что нужного нам проекта там может просто не быть. Но что-то ввести в скрипт нужно, пустую строку он не примет. Так что введём просто “1” например и закончим работу.



  9. На странице «Оценки и отзывы» своего приложения нужно найти идентификатор сегмента отчетов, начинающийся со строки pubsite_prod_rev_, например pubsite_prod_rev_1234567890123456789.





  10. Теперь никто не мешает нам скачать все отчеты. Для этого достаточно выполнить команду
    gsutil.py -m cp gs://pubsite_prod_rev_1234567890123456789/reviews/*.* Адрес_папки_куда_копировать

    В нашем случае:
    gsutil.py -m cp gs://pubsite_prod_rev_1234567890123456789/reviews/*.* C:\Python27\texts

    -m – флаг копирования в несколько параллельных потоков
    cp – команда копирования файлов.
    Подробно о командах утилиты можно прочитать тут.

  11. В результате в папке мы получим кучу файлов с именами по схеме reviews_[имя_пакета_приложения]_YYYYMM (Y — год, M — месяц). Причем для всех закреплённых за вашим аккаунтом приложений сразу.



    Конечно, если вам нужны отчеты только одному приложению, можно качать данные запросом вида
    gsutil.py -m cp gs://pubsite_prod_rev_1234567890123456789/reviews/* com.new_program*.* C:\Python27\texts

    Но, думаю, принцип фильтрации и так понятен.

  12. В целом, всё уже прекрасно, но работать с пачкой отдельных файлов неудобно, так что простым питоновским скриптом склеим их в один файл. Конечно, можно было бы простой командой copy объединить файлы в один, но тогда у нас будет дублироваться заголовок, а это неприятно.

    import os
    import codecs
    
    files = os.listdir(".")
    csvs = filter(lambda x: x.endswith(".csv") and x!="all_csv.csv", files)
    file_write = codecs.open('all_csv.csv', 'w','utf-16')
    header_writed = False
    for file_name in csvs:
        file_read = codecs.open(file_name,'r','utf-16')
        lines_count=0
        for line in file_read:
            lines_count=lines_count+1
            if (lines_count == 1):
                if (header_writed == False):
                    header_writed = True
                    file_write.write(line)
            else:
                file_write.write(line)
        file_read.close()
    file_write.close() 


Ну вот вроде бы и всё. Полученный файл в экселе выглядит примерно так:






А уж какую аналитику творить с полученным файлом – смотрите сами. :)

Список использованной литературы


support.google.com/googleplay/android-developer/answer/138230#export_ratings_and_reviews
developers.google.com/storage/docs/gsutil
Tags:
Hubs:
Total votes 14: ↑13 and ↓1+12
Comments11

Articles

Information

Website
tech.kontur.ru
Registered
Founded
Employees
over 10,000 employees
Location
Россия
Representative
Варя Домрачева