Аналитика

Как перенести данные из ВКонтакте в Power BI

152
13

Несмотря на недавнюю блокировку соцсети в Индии, ВКонтакте продолжает оставаться огромным источником полезной информации и статистики. В этой статье я расскажу, как с помощью написанного мной программного пакета rvkstat и коннектора  R получить данные из API ВКонтакте в Microsoft Power BI.

Причем получить эти данные можно даже в странах, где сама соцсеть официально заблокирована.

Установка необходимого программного обеспечения

Скачайте и установите актуальную версию языка R и Power BI. Это, пожалуй, самая простая часть работы, как R так и Power BI при установке не требуют от вас никаких дополнительных манипуляций и настройки — просто кликайте по кнопкам Next и Ok.

Как создать Standalone-приложение ВКонтакте

Для работы с API Вконтакте необходимо создать Standalone-приложение, непосредственно в интерфейсе социальной сети.

Для создания приложения перейдите по этой ссылке и выберите Standalone-приложение.

Для создания приложения перейдите по этой ссылке и выберите Standalone-приложение

Перейдите в настройки только что созданного приложения и заполните следующие поля следующим образом:

Адрес сайта: https://selesnow.github.io/rvkstat/getCode/get_code.html
Базовый домен: selesnow.github.io
Доверенные redirect URI: https://selesnow.github.io/rvkstat/getCode/get_code.html
https://selesnow.github.io/rvkstat/getCode/get_token.html

Далее для получения токена разработчика вам понадобится ID и засекреченный ключ приложения.

Доверенные редирект URL

Устанавливаем пакет rvkstat

Пакет rvkstat — R-клиент для работы с API ВКонтакте. Его можно установить из моего репозитория на GitHub с помощью приведенного ниже кода в R.

if(!"devtools" %in% installed.packages()[,1]){install.packages("devtools")}
devtools::install_github('selesnow/rvkstat')

Если на данном этапе вы всё сделали правильно, в R-консоли увидите сообщение о том, что пакет rvkstat успешно установлен:

Если на данном этапе вы всё сделали правильно, в R-консоли увидите сообщение о том, что пакет rvkstat успешно установлен

Получаем токен разработчика

Следующий шаг — получение токена доступа к API ВКонтакте. Для этого необходимо подключить пакет rvkstat и с помощью функции vkAuth получить токен разработчика.

Для этого вставьте в R-консоль следующий код:

myCredential <- vkAuth(app_id = <ID Вашего Приложения>, app_secret = <Защищённый Ключ Вашего Приложения>)

После запуска функции откроется окно браузера, в котором необходимо предоставить приложению все необходимые для работы разрешения:

Нажмите «Разрешить»

Затем откроется окно браузера, в котором будет ваш код доступа. Вам необходимо скопировать его и вставить в R-консоль в ответ на запрос «Enter code from URL:».

После чего откроется окно браузера, в котором будет ваш код доступа

Вам необходимо скопировать его и вставить в R-консоль в ответ на запрос

После этого в вашем рабочем окружении будет создан объект myCredential, именно в нём теперь хранится токен доступа к API.

Посмотреть его можно с помощью кода:

myCredential$access_token

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

Для удобства скопируйте из консоли полученный токен в блокнот

Как получить данные из рекламного кабинета ВКонтакте в Power BI

На этом шаге можно смело закрывать R-консоль и открывать Power BI. Для загрузки данных жмите на «Get Data».

На этом шаге можно смело закрывать R-консоль и открывать Power BI. Для загрузки данных жмите на «Get Data»

В открывшемся диалоговом окне переходим в группу коннекторов «Other», выбирайте «R script» и нажимайте «Connect».

В открывшемся диалоговом окне переходим в группу коннекторов «Other», выбирайте «R script» и нажимайте «Connect»

Далее в диалоговое окно «R Script» вставьте R-код, подставив в аргументы функций свои значения.

#Подключаем пакет
library(rvkstat)

##Получаем список рекламных кампаний
camp <- vkGetAdCampaigns(account_id = <id вашего рекламного кабинета>,
                        access_token = <токен разработчика, полученный на прошлом шаге>)

##Получаем статистику по рекламным кампаниям по дням
vk_stat_by_campaign <- vkGetAdStatistics(account_id = <id вашего рекламного кабинета>,
                                        ids_type = "campaign",
                                        ids = camp$id ,
                                        period = "day",
                                        date_from = "2010-01-01",
                                        date_to =Sys.Date(),
                                        access_token = <токен разработчика, полученный на прошлом шаге>)

Далее в диалоговое окно «R Script» вставьте R-код, подставив в аргументы функций свои значения

Если вы верно указали значения для всех аргументов функций, откроется диалоговое окно «Navigator», в котором можно выбрать две таблицы:

  • camp — справочник рекламных кампаний;
  • vk_stat_by_camp — статистика по рекламным кампаниям.

Если вы верно указали значения для всех аргументов функций, откроется диалоговое окно «Navigator», в котором можно выбрать две таблицы

После этого в Power BI будут загружены обе таблицы, и между таблицами будет установлена связь camp.id = vk_stat_by_camp.id.

Чтобы получить статистику в разрезе рекламных объявлений, необходимо в аргументе ids_type указать значение «ad» и в аргумент ids передать номера объявлений.

Например, можете воспользоваться следующим кодом:

##Подключаем пакет
library(rvkstat)
## Получаем список рекламных кампаний
ads <- vkGetAds(account_id = account_id, access_token = my_tok$access_token)
## Получаем статистику по объявлениям
vk_stat_by_ads <- vkGetAdStatistics(account_id = 1,
                                   ids_type = "ad",
                                   ids = ads$id ,
                                   period = "month",
                                   date_from = "2010-01-01",
                                   date_to =Sys.Date(),
                                   access_token = <токен разработчика полученный на прошлом шаге>))

Для загрузки общей статистики по рекламному кабинету необходимо передать в аргумент ids_type значение «office», а в аргумент ids передать номер рекламного кабинета.

По указанному выше примеру можно получить и другую статистику из рекламного кабинета и сообществ ВКонтакте.

Ловите список доступных функций для загрузки статистики из рекламного кабинета:

  • vkGetAdCategories — возможные тематики рекламных объявлений и их категорий;
  • vkGetAdAccounts — список доступных рекламных кабинетов;
  • vkGetAdClients — список клиентов из агентского аккаунта;
  • vkGetAds — список объявлений;
  • vkGetAdCampaigns — список рекламных кампаний;
  • vkGetAdStatistics — статистика показателей эффективности по рекламным объявлениям, кампаниям, клиентам или всему кабинету;
  • vkGetAdCityStats — статистика охвата аудитории по рекламным кампаниям или объявления в разрезе городов;
  • vkGetAdGenderStats — статистика охвата аудитории по рекламным кампаниям или объявления в разрезе пола;
  • vkGetAdAgeStats — статистика охвата аудитории по рекламным кампаниям или объявлениям в разрезе возраста;
  • vkGetAdGenderAgeStats — статистика охвата аудитории по рекламным кампаниям или объявлениям в разрезе пола и возраста;
  • vkGetAdBudget — остаток средств из рекламного кабинета;
  • vkGetAdPostsReach — подробная статистика по охвату рекламных записей из объявлений и кампаний для продвижения записей сообщества.

Подробную справку с примерами кода и полным описанием полей, которые будут загружены в результате работы функции в пакете rvkstat, можно получить с помощью команды help в R-консоли:

help("vkGetAdStatistics")

Полный список функций можно получить с помощью команды help(package  = "rvkstat"), либо перейдя в ReadMe репозитория пакета по ссылке.

Как построить визуализацию в Power BI

После загрузки данных в Power BI будет создано две таблицы:

  • camp — справочник рекламных кампаний;
  • vk_stat_by_campaign — статистика по рекламным кампаниям.

Между кампаниями будет автоматически создана связь по полям id.

На данном шаге данные уже загружены в Power BI, вам остаётся только построить нужные графики и таблицы

Остаётся только построить нужные графики и таблицы.

остаётся только построить нужные графики и таблицы

Выводы

ВКонтакте — одна из самых популярных социальных сетей в СНГ, а Power BI одна из самых популярных в мире BI-платформ. Связав эти инструменты, вы легко построите удобные дашборды и проанализируете свои рекламные кампании и объявления.

Что для этого нужно:

  1. Скачать и установить актуальную версию языка R.
  2. Скачать и установить актуальную версию Microsoft Power BI.
  3. Создать Standalone-приложение ВКонтакте.
  4. Установить пакет rvkstat.
  5. Получить токен для доступа к API ВКонтакте.
  6. С помощью функций доступных в пакете rvkstat написать код для загрузки данных в Power BI.
  7. Построить удобный и информативный dashboard.
Обнаружили ошибку? Выделите ее и нажмите Ctrl + Enter.

Комментарии (56)

  1. 0
    6 дней назад

    Алексей, здравствуйте.

    Подскажите, как бороться с ошибкой: Request-URI Too Long (HTTP 414)

    Пример скрипта:

    library(rvkstat)

    ads_vk <- vkGetAds(account_id = "1111", client_id = "2222", access_token = my_Token$access_token)

    ads_stat_vk <- vkGetAdStatistics (account_id = "1111",

                                                ids_type = "ad",

                                                ids = ads_vk$id,

                                                period = "day",

                                                date_from = "2018-06-01",

                                                date_to = "2018-06-10",

                                                access_token = my_Token$access_token)

    • 0
      Денис Кулешов
      8 часов назад

      Есть несколько вопросов:


      1. Какая версия пакета rvkstat у вас установлена?

      2. Какая из функций возвращает ошибку, обычно сообщение об ошибке начинаптся с  Error.


      В течении этой недели я буду в отпуске.

  2. 0
    26 дней назад

    Алексей, здравствуйте.

    Ни так давно при использовании запросов vkGetAdCityStats и vkGetAdGenderAgeStats, стала появляться следующая ошибка:  Error in dataRaw$response[[i]] : subscript out of bounds.

    Подскажите, как её решить?


    Спасибо.


    • 0
      Денис Кулешов
      26 дней назад
      Добрый день, а можете прикрепить пример вашего кода, только уберите из него токен.
      • 0
        Алексей Селезнёв
        25 дней назад

        library(rvkstat) 

        library(Rcpp)

        ads_vk <- vkGetAdsLayout(account_id = "11111111111", client_id = "22222222", access_token = my_Token$access_token, api_version = "5.73")

        genderAge_stat_vk <- vkGetAdGenderAgeStats (account_id = "1111111111111", 

                                                ids_type = "ad",

                                                ids = ads_vk$id ,

                                                period = "day",

                                                date_from = "2018-01-01",

                                                date_to = "2018-03-01",

                                                access_token = my_Token$access_token)

        Сегодня в течении дня данный запрос выдает другую ошибку:

        Error in vkGetAdGenderAgeStats(account_id = "1111111111111111", ids_type = "ad", :

          Internal Server Error (HTTP 500).

        • 0
          Денис Кулешов
          19 дней назад

          В первом комментарии вы говорили о функциях vkGetAdCityStats и vkGetAdGenderAgeStats, а в примере скрипта испульзуются функции vkGetAdsLayout и vkGetAdGenderAgeStats.


          Ошибка 500 это проблема на стороне сервера ВК, а вот ошибка из первого сообщения не понятно какой из функций вызвано попробуйте убрать аргумент api_version из функции vkGetAdsLayout, скорее всего проблема вызвана именно тем что вы пытаетесь к более старой или наоборот более новой версией AP

  3. 0
    месяц назад

    Алексей, здравствуйте.

    Спасибо за статью.

    Столкнулся с проблемой, при использовании (разных запросов) возникает одна и та же ошибка:

    Error 100 - One of the parameters specified was missing or invalid: account_id is invalid

    Пример скрипта:

    library(rvkstat)

    camp <- vkGetAdCampaigns(account_id = "id рекламного кабинета", access_token = "15f5bac9a77669f0092d1111111111111111111111111111111111111111111111111111111111111111")

    vk_stat_by_campaign <- vkGetAdStatistics(account_id = "id кампании",

                                             ids_type = "campaign",

                                             ids = "id кампании",

                                             period = "day",

                                             date_from = "2018-05-01",

                                             date_to = "2018-05-10",

                                             access_token = "15f5bac9a77669f0092d1111111111111111111111111111111111111111111111111111111111111111")


    Подскажите ка решить данную проблему, моя задача выгрузить статистку (показы, клики, расход) в разрезе до объявлений?

    Спасибо.

    • 0
      Денис Кулешов
      месяц назад

      Добрый день, сообщественно сообщение об ошибке вам на неё указывает, смотрите - One of the parameters specified was missing or invalid: account_id is invalid.

      Один из параметров указан неверно, точнее account_id указан не верно.

      Вы вместо ID рекламного кабинета в аргумент account_id передаёте ID рекламной кампании (ваш код: account_id = "id кампании") а надо передавать ID рекламного кабинета.

  4. 0
    3 месяца назад
    Проблему решил, комментарий удалить не могу. Спасибо за библиотеку. p.s. добавьте возможность удаления комментарий бессрочно.
  5. 0
    4 месяца назад
    Алексей, каким образом можно связывать объявления с достижениями цели в метрике? Если Для каждого объявления используется своя utm'ка? Т.е. суть вопроса в том, как связать UTM метки из метрики с конкретными объявлениями вконтакте?
    • 0
      Maks Efremov
      4 месяца назад

      Добрый день, в принципе есть несколько вариантов.


      1. Создать справочник соответствия id объявления и UTM метки, это может быть к примеру обычный csv файл, в котором будет всего 2 поля AdID и UTM. Далее к этому справочнику по ID объявления привязать данные полученные из API Вконтакте, а данные из метрики привязать по значению UTM. Таким образом вы свяжете все данные.


      2. Более эффективный и правильный способ это передавать в UTM метку не какой то абстрактный текст, а ID объявления, тогда по этому ID вы без проблем сможете связывать данные полученные из Вконтакте и данные из метрики.



  6. 0
    4 месяца назад

    Здравствуйте, выдает такую ошибку


    Error: unexpected '<' in "myCredential <- vkAuth(app_id = <"

    В чем может быть проблема?

     Вторая проблема в том, что я загрузил вкстат, но выдает такую ошибку could not find function "vkAuth"

    • 0
      Денис Летов
      4 месяца назад

      Добрый день.

      1. Error: unexpected '<' in "myCredential <- vkAuth(app_id = <"

      Уберите знаки < и >, в статье они указываются что там надо вписать какие то свои данные, например id приложения.


      2. загрузил вкстат, но выдает такую ошибку could not find function "vkAuth"

      Скорее всего вы установили пакет но не подключили перед использованием, для того что бы работать с функциями пакета воспользуйтесь командой library(rvkstat).

  7. 0
    5 месяцев назад

    Алексей, добрый день.


    Возможна ли установка пакета rvkstat на Mac OS?

    Понятно, что M-BI не установить на эту ОС, но хотелось бы выгружать данные для работы в Excel, например. Реально?
    • 0
      Дмитрий Некрасов
      5 месяцев назад

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


      if(!"devtools" %in% installed.packages()[,1]){install.packages("devtools")}
      devtools::install_github('selesnow/rvkstat', subdir = "en")
  8. 0
    5 месяцев назад

    Алексей, добрый день.

    Спасибо за интересную статью. Но, наверное, произошли изменения в работе ВК и ваших библиотек. 

    Например:

    1. У меня в настройках ВК нет полей  "Доверенные redirect URI" и непонятно, нужно ли и куда  вносить   https://selesnow.github.io/rvkstat/getCode/get_code.html и  https://selesnow.github.io/rvkstat/getCode/get_token.html

    2.   R выдает ошибку "не могу найти функцию "vkAuth"" 


    Вы могли бы обновить материал?

    • 0
      Roustam Saghitdinov
      5 месяцев назад

      Добрый день, спасибо за вопрос, но видимо вы что-то делаете не так.


      1. Вам нужны не ваши настройки  в ВК, а настройки вашего приложения ВК, смотрите внимательно на скрин где находится поле Доверительный redirect URI.



      2.  R сообщат о том, что не может найти функцию из какого либо установленного пакета в случае  если вы этот пакет предварительно не подключили с помощью команд require или library.

      Пример команды подключения пакетов.

      library(rvkstat)


      Далее пишите код с использованием функций пакета, в  примере кода приведенного в статье , везде в начале подключается пакет rvkstat,



      Внимательнее читайте мануал, думаю теперь у вас всё получится.

      • 0
        Алексей Селезнёв
        5 месяцев назад

        Алексей, здравствуйте.


        Присоединяюсь к вопросу Рустама. В настройках приложения нет таких полей, куда можно было бы ввести адреса. Вот что мы видим сейчас:


        • 0
          Дмитрий Некрасов
          5 месяцев назад

          Вы правы в API ВК произошли изменения, попробуйте пока создать не stand-alone приложение а приложения типа веб-сайт.


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

  9. 0
    6 месяцев назад

    Добрый день! 

    Что-то пошло не так:


    * installing *source* package 'rvkstat' ...

    ** R

    ** preparing package for lazy loading

    Error in loadNamespace(j <- i[[1L]], c(lib.loc, .libPaths()), versionCheck = vI[[j]]) : 

      there is no package called 'tidyr'

    ERROR: lazy loading failed for package 'rvkstat'

    * removing 'C:/Program Files/R/R-3.4.1/library/rvkstat'

    Installation failed: Command failed (1)

    • 0
      Kirill Rakov
      6 месяцев назад

      Здравствуйте

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

      install.packages('Rcpp')

      install.packages('tidyr')

      Далее попробуйте ещё раз установить rvkstat

      devtools::install_github('selesnow/rvkstat')

      • 0
        Алексей Селезнёв
        6 месяцев назад

        Спасибо! Ушёл пробовать. 

        Очень классные решения у Вас. Активно пользуюсь ryandexdirect, скидываю Ваш блог коллегам. Не планируете ли писать библиотеку для Facebook/Instagram? 

        • 0
          Kirill Rakov
          6 месяцев назад

          Для Facebook давным давно готово решение и даже есть статья на блоге. Пакет для facebook называется rfacebookstat.

          Статья с примером работы с этим пакет вот тут.


          Т.к. управление рекламными кампаниями в Instagram так же идёт из рекламного кабинета Facebook то и по Instagram вы тоже можете использовать пакет rfacebookstat,

          • 0
            Алексей Селезнёв
            6 месяцев назад

            Алексей, добрый день! 

            Помогите пожалуйста сфомировать правильный запрос. Получить список кампаний клиента у меня получилось:

            my_vk_campaigns <- vkGetAdCampaigns(account_id = id-центра-клиентов, 

                                                client_id = id-клиента,

                                                access_token = токен)

            А вот получить статистику по кампаниям клиента уже не получается. 

            vk_stat_by_campaign <- vkGetAdStatistics(account_id = x,

                                                                                                                                               и так далее)

            Если на место account_id поставить id центра клиентов, то кампании не снимаются, так как в центре клиентов их и нет, а если туда поставить id клиента, то опять же не снимаются, потому что id клиента не является доступным, доступным является только id центра клиентов.

            У меня получилось снять статистику по клиенту агентства в целом, указав ids_type="client" и указав его id в аргументе ids, но вот углубиться на уровень кампаний уже нет. 
            • 0
              Kirill Rakov
              6 месяцев назад

              Добрый день, смотрите что в каком аргументе надо указать.

              #Получаем список РК клиента из агентского аккаунта.

              my_vk_campaigns <- vkGetAdCampaigns(account_id = id-центра-клиентов, 

                                                  client_id = id-клиента,

                                                  access_token = токен)

              #Получаем  статистику по рекламным кампаниям вашего клиента

              #В   ids_type указываем что  вы хотите  получить статистику по РК, и на вход в  аргумент Ids передаёте нормера рекламных кампаний, в   account_id передаёте id вашего  агентского аккаунта,  в аргумент  ids передаёте вектор  с id рекламных кампаний вашего клиента.


              #Запрашиваем статистику по рекламным кампаниям клиента

              vk_stat_by_campaign <- vkGetAdStatistics(account_id = id-центра-клиентов,

                                                                                                                                                ids_type = "campaign" ,

                                                                                                                                                ids = my_vk_campaigns $id, 

                                                                                                                                               date_from = "2017-11-01",

                                                                                                                                               date_to = "2017-11-30",

                                                                                                                                               access_token = токен)

                  
              Таким образом вы получите статистику по рекламным кампаниям клиента прикреплённого к вашему агентскому аккаунту.
  10. 0
    7 месяцев назад

    Алексей, здравствуйте!

    Я к Вам с новым вопросом. Не планируете ли добавлять в пакет stats.getPostReach (https://vk.com/dev/stats.getPostReach )? 

    • 0
      Игорь Мальцев
      7 месяцев назад
      Обязательно добавлю, по мере появления свободного времени, постараюсь сделать в ноябре.
      • 2
        Алексей Селезнёв
        7 месяцев назад
        Супер! Еще раз спасибо за Ваш труд!
        • 0
          Игорь Мальцев
          2 месяца назад

          Алексей, здравствуйте.
          Удалось ли это реализовать?

          Очень не хватало данных reach_ads :)


          • 0
            Игорь Мальцев
            2 месяца назад

            Приветствую Игорь, пока статистику по записям можно вернуть с помощью функции vkGetUserWall, эта функция работает с другим методом - wall.get.


            Возвращает она не такую полную статистику по записи, но зато в ней нет ограничения по количеству подписчиков 5000.


            Более подробно о работе с этой функцией можно узнать тут.





            • 0
              Алексей Селезнёв
              2 месяца назад

              Алексей, спасибо за ответ.

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


              • 0
                Игорь Мальцев
                2 месяца назад

                Сейчас очень туго со свободным времени, поэтому пока точно не могу сказать когда именно смогу реализовать эту функцию, но при развитие пакета буду учитывать интерес к этому методу.

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

                Создать его можно тут - https://github.com/selesnow/rvkstat/issues.

                Это значительно ускорит процесс разработки функции, т.к. в первую очередь я делаю именно то, что просят в тикетах. 

  11. 1
    8 месяцев назад

    Добрый день. Заметил расхождение в кликах между используемым в пакете методом ads.getStatistics и статистикой в рекламном кабинете. Написал в поддержку в вк, вот ответ:

    Сейчас метод ads.getStatistics не выгружает клики по промопостам, возвращает "0". Планируется доработать данный метод. Мы передали информацию разработчикам. Спасибо!

    Так что имейте в виду

  12. 0
    8 месяцев назад

    Алексей, как всегда, всё мега-полезно. Спасибо!

    Но столкнулся с такой ошибкой:

    Error in paste0("https://oauth.vk.com/access_token?client_id=", app_id,  :   object 'tLekc77RAXqe9DjN63cw' not found


    Код подтверждения не подходит. 


    (работаю из Украины, но прокси подключил)

    • 0
      Игорь Мальцев
      8 месяцев назад

      Добрый день!

      Рад что материал был вам полезен.

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

      Что бы я мог вам помочь, прикрепите сюда код, который возвращает ошибку.

      • 0
        Алексей Селезнёв
        8 месяцев назад

        Алексей, спасибо! Проблема действительно была в отсутствии кавычек.

        Но теперь есть другая проблема:

        Error in curl::curl_fetch_memory(url, handle = handle) : 

          Timeout was reached: Operation timed out after 10000 milliseconds with 0 out of 0 bytes received


        Пользуюсь Вашим прокси. 

        • 0
          Игорь Мальцев
          8 месяцев назад

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


          Если такая ошибка появляется пробуйте остановить прокси через getProxy(action = "stop") и опять запустить получив новый IP и порт, используйте следующие фильтры:


          getProxy(port = "3128", country = "RU", supportsHttps = TRUE, action = "start")
  13. 0
    9 месяцев назад
    Классный пакет, спасибо!  
  14. 0
    9 месяцев назад

    делаю чуть проще. не задаю список ad_id, только id кабинета. запускаю скрипт на Python. получаю сразу детализацию до объявлений (в том числе и боковик со вступлениями, он как раз на скрине)


    jupiter

    выгружаю в csv и уже его подтягиваю в Power Bi. Это если стоит задача скрестить с метрикой и достижением целей. Если такой задачи нет, то csv самодостаточна для анализа и дальнейшего ведения рекламной кампании на стороне Вк. 

    • 0
      Eugeny Vershovsky
      9 месяцев назад

      Вам удобней сначала грузить в csv, а потом в Power BI, как мне кажется, в таком случае уже лучше из API не в csv а в БД.


      По сути, с помощью rvkstat вы тоже можете не задавать список id объявлений, он же автоматом подтянется с помощью функции vkGetAds, и всегда будет актуальным.


      Просто, чем больше шагов по перекачки данных, тем больше вероятность по пути эти данные потерять, ну или больше вероятность того, что где-то выбьет ошибка.


      Python скрит вы вручную запускаете, или он по расписанию сам обновляет csv?

      • 0
        Алексей Селезнёв
        8 месяцев назад

        Можно и в бд. 

        Изначальный смысл был в том чтобы автоматизировать часть вычислений при проведении тестовой рекламной кампании. Тест разбит на этапы. Проверка креативов в боковике. Проверка сегментов. Тест промо постов и прочее. 

        На каждом этапе нужно иметь исчерпывающую инфу по дальнейшим действиям. Поэтому вручную и поэтому csv. Т.е. как только этап завершен, данные в таблицу (копию в отчет) и готовим следующий этап. 

        Цели сразу лить в Power Bi не было. Она позже появилась когда встала необходимость с целями по метрике все это вязать. Пока просто обновляю csv (стата из Вк и из метрики), а в Power Bi уже связями получаю дашборд. 

Чтобы оставить комментарий, необходимо авторизироваться

Подписаться

на самую полезную рассылку по интернет-маркетингу

Самое

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

Этот сайт использует куки-файлы и другие технологии, чтобы помочь вам в навигации, а также предоставить лучший пользовательский опыт, анализировать использование наших продуктов и услуг, повысить качество рекламных и маркетинговых активностей.