- Краткое описание пакета rvkstat
- Как получить подробную справку по функциям пакета
- Что необходимо для начала работы с API Вктонтакте с помощью пакета rvkstat
- Как обойти блокировку API сервиса Вконтакте на Украине
- Установка пакета rvkstat
- Как пройти аутентификацию для работы с API Вконтакте с помощью пакета rvkstat
- vkGetToken - Авторизация в Вконтакте с помощью метода Implicit Flow, ключ доступа пользователя.
- vkGetGroupToken - - Авторизация в Вконтакте с помощью метода Implicit Flow, ключ доступа сообщества.
- vkAuth - Авторизация в Вконтакте с помощью метода Authorization Code Flow
- Функции доступные в пакете rvkstat
- Функции для загрузки данных из рекламного кабинета Вконтакте
- vkGetAdCategories - Получить возможные тематики рекламных объявлений и их подразделы.
- vkGetAdAccounts - Получить список доступных рекламных кабинетов
- vkGetAdClients - Получить список клиентов из агентского аккаунта
- vkGetAds - Получить список объявлений
- vkGetAdsLayout - Возвращает описания внешнего вида рекламных объявлений.
- vkGetAdCampaigns - Получить список рекламных кампаний
- vkGetAdStatistics - Получить статистику показателей эффективности по рекламным объявлениям, кампаниям, клиентам или всему кабинету
- vkGetAdCityStats - Получить статистику по охвату аудитории по рекламным кампаним или объявления в разрезе городов
- vkGetAdGenderStats - Получить статистику по охвату аудитории по рекламным кампаним или объявления в разрезе пола
- vkGetAdAgeStats - Получить статистику по охвату аудитории по рекламным кампаним или объявления в разрезе возраста
- vkGetAdGenderAgeStats - Получить статистику по охвату аудитории по рекламным кампаним или объявления в разрезе пола и возраста
- vkGetAdBudget - Получить остаток средств из рекламного кабинета
- vkGetAdPostsReach - Получить подробную статистику по охвату рекламных записей из объявлений и кампаний для продвижения записей сообщества
- Функции для загрузки данных из сообществ Вконтакте
- vkGetGroupStat - Получить общую статистику по сообществу
- vkGetGroupStatAge - Получить данные о посетителях сообщества по возрасту
- vkGetGroupStatCity -Получить данные о посетителях сообщества по городам
- vkGetGroupStatCountries - Получить данные о посетителях сообщества по странам
- vkGetGroupStatGender - Получить данные о посетителях сообщества по полу
- vkGetGroupStatGenderAge - Получить данные о посетителях сообщества по полу и возрасту
- vkGetGroupStatPostReach - Получить детальные данные по охвату по записяписям сообществ
- Функции для загрузки справочной инормации из Вконтакте
- vkGetDbCountries - Получить id и название стран
- vkGetDbCities - Получить справочник городов
- vkGetDbRegions - Получить справочник регионов
- Функции для загрузки инормации о пользователе Вконтакте
- vkGetUserFriends - Получить список друзей пользователя Вконтакте
- vkGetUserDialogs - Получить список диалогов текущего пользователя или сообщества
- vkGetUserGroups - Получить список групп и сообществ в которых состоит пользователь Вконтакте
- vkGetUserWall - Получить сообщения со стены пользователя с количеством комментариев, лайков и рипостов
- Функции для загрузки данных из рекламного кабинета Вконтакте
- Список статей с примерами работы с пакетом rvkstat
- Информация об авторе пакета
Пакет rvkstat является R клиентом для работы с API социальной сети Вконтакте, с помощью функций данного пакета можно получить статистику из рекламного кабинета Вконтакте, а так же данные о посетителях сообществ вконтакте по дням, в разрезе возрастных групп, пола и геолокации посетителей.
Все функции входящие в пакет rvkstat имеюи префикс vk.
Все функции пакета разделены на блоки, определить к какому блоку относится функция можно из её названия, название блока к которому относится функция идёт сразу после префикса vk:
- Блок функция GetGroupStat предназначем для загрузки статистики по сообществам Вконтакте.
- Блок функций GetAd направлен на загрузку данных из рекламного кабинета Вконтакте.
- Блок функций GetDb даёт возможность загрузки справочной информации из Вконтакте.
- Блок функций GetUser используется для загрузки данных о конкретном пользователе Вконтакте.
Все функции пакета имеют подробное описание на русском языке, получить детальную справку по любой функции пакета rvkstat можно с помощь команды help
, если вы работаете в RStudio справку так же можно получить указав ?
перед названием комапнды:
help("vkGetAdStatistics")
?vkGetAdStatistics
Для работы с api вконтакте вам необходимо создать приложение, в большинстве случаев вам потребуется при создании приложения указать платформу Веб-сайт, но если вы планируете загрузить диалоги из сообщества а не из пользовательского аккаунта то необходио указать платформу Standalone-приложение.
Для создания приложения перейдите по этой ссылке, и выберите в разделе платформа Веб-сайт, если вы планируете загрузить диалоги из сообщества выбирайте - Standalone-приложение.
Далее, если вы создали веб приложение перейдите в меню настроек приложения, и влючите Open API:
После чего появятся настройки Open API, введите в них следующие значения:
Адрес сайта: http://selesnow.github.io
Адрес сайта: selesnow.github.io
Доверенный redirect URI: https://selesnow.github.io/rvkstat/getCode/get_code.html
Доверенный redirect URI: https://selesnow.github.io/rvkstat/getCode/get_token.html
Доверенный redirect URI: https://oauth.vk.com/blank.html
Для начала работы с функциями пакета и для того, что бы с помощью формы получения токена или функции авторизации в Вконтакте получить токен разработчика используйте ID и Защищённый ключ приложения, вы в любой момент сможете найти их в настройках вашего приложения.
Обойти блокировку API Вконтакте на Украине можно с помощью пакета getProxy. Процесс обхода блокировки с помозью пакета getProxy:
- Устанавливаем пакет getProxy с помощью приведённого ниже кода:
if(!"devtools" %in% installed.packages()[,1]){install.packages("devtools")}
library(devtools)
install_github("selesnow/getProxy")
- Подключаем пакет getProxy с помощью комманды
library(getProxy)
. - Далее с помощью функции
getProy
обходим блокировку через прокси сервер, пример кода ниже:
#Направляем интернет соединение через прокси сервер
getProxy(port = "3128", country = "RU", supportsHttps = TRUE, action = "start")
#Пишем код для работы с API Вконтакте с помощью функций пакета rvkstat
#Отключаемся от прокси сервера
getProxy(action = "stop")
Пакет rvkstat может быть установлен непосредственно из репозитория Github с помощью приведённого ниже программного кода.
if(!"devtools" %in% installed.packages()[,1]){install.packages("devtools")}
devtools::install_github('selesnow/rvkstat')
if(!"devtools" %in% installed.packages()[,1]){install.packages("devtools")}
devtools::install_github('selesnow/rvkstat', subdir = "en")
Для прохождения процесса авторизации в пакете rvkstat есть три функции:
- vkGetToken - Упрощённая авторизация по методу Implicit Flow, токен доступа пользователя выдаётся с привязкой к IP адресу, в связи с чем при смене IP адреса прийдётся проходить процедуру авторизации. Такой ключ требуется для работы почти со всеми методами нашего API, за исключением методов секции secure. Некоторые методы (как, например, users.get) можно вызывать и без access_token, но часть данных в таком случае может быть недоступна, поскольку имеет значение, для какого пользователя их нужно получить.
- vkGetGroupToken - Упрощённая авторизация по методу Implicit Flow, токен доступа сообщества выдаётся с привязкой к IP адресу, в связи с чем при смене IP адреса прийдётся проходить процедуру авторизации. Такой ключ позволяет работать с API от имени группы, встречи или публичной страницы. Например, с его помощью Вы можете отвечать подписчикам сообщества на сообщения, поступившие в его адрес. С ключом доступа сообщества можно вызывать те методы, которые имеют специальную пометку в общем списке.
- vkAuth - Для прохождение процесса авторизации с помощью метода Authorization Code Flow, токен полученный с помощью данной функции будет работать с любого IP.
ID приложения в Вконтакте:
ID сообществ Вконтакте разделённых запятыми, без пробелов:
пример: 0001,0002,0003
Для получения ключа доступа пользователя по схеме Implicit Flow воспользуйтесь следующим кодом:
myToken <- vkGetToken(app_id = <ID Вашего Приложения>)
Измените <ID Вашего Приложения> на ID вашего приложения, ID приложения можно получить на странице настройки приложения, как показано в разделе "Что необходимо для начала работы с API Вктонтакте с помощью пакета rvkstat".
После запуска функции откроется окно браузера, в котором вам необходимо предоставить приложению все необходимые для работы разрешения.
После предоставления разрешения вы будете перенаправлены на страницу https://selesnow.github.io/rvkstat/getCode/get_token.html где вам будет сгенерирован токен доступа.
Скопируйте его значение и вставьте в R, в качестве ответа на запрос "Your vk token from URL parameter access_token: ".
Для получения ключа доступа сообществ по схеме Implicit Flow воспользуйтесь следующим кодом:
group_token <- vkGetGroupToken(app_id = <ID Вашего Приложения>, group_ids = <ID Сообщества>)
После чего откроется окно браузера, в котором вам необходимо подтвердить разрещение на доступ к данным
Далее скопируйте токен доступа из URL на который вы были перенаправлены и вставьте в R, в качестве ответа на запрос "Your vk token from URL parameter access_token: ".
myToken <- vkAuth(app_id = <ID Вашего Приложения>, app_secret = <Защищённый Ключ Вашего Приложения>)
Вместо <ID Вашего Приложения> укажите ID вашего приложения, вместо <Защищённый Ключ Вашего Приложения> укажите защищёный ключ вашего приложения, оба аргумента можно посмотреть на странице настройки приложения как описано в разделе "Что необходимо для начала работы с API Вктонтакте с помощью пакета rvkstat".
После запуска функции откроется окно браузера, в котором вы должны подтвердить разрешение доступ к данным в вконтакте.
После предоставления разрешения вы будете перенаправлены на страницу https://selesnow.github.io/rvkstat/getCode/get_code.html где вам будет сгенерирован код для получения токена доступа.
Скопируйте его значение и вставьте в R, в качестве ответа на запрос "Enter code from URL: ". После чего в рабочем окружении R появится объект myToken, который будет содержать токен доступа, срок действия токена (в данном случае токен бессрочный) и id пользователя которому был предоставлен токен доступа к API.
##Авторизация в вк
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
##Получение списка возможных тематик рекламных объявлений
vk_ad_categories <- vkGetAdCategories(access_token = my_tok$access_token)
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
##Авторизация в вк
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
##Запрос списка доступных рекламных кабинетов
my_vk_acc <- vkGetAdAccounts(my_tok$access_token)
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
##Авторизация в вк
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
##Запрос списка доступных рекламных кабинетов
my_vk_clients <- vkGetAdClients(account_id = 11111111, access_token = my_tok$access_token)
- account_id - Идентификатор рекламного кабинета, список всех доступных рекламных кабинетов можно получить с помщью функции vkGetAdAccounts.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
#Получаем список объявлений
my_vk_ads <- vkGetAds(account_id = 11111111,
access_token = my_tok$access_token)
- account_id - Идентификатор рекламного кабинета, список всех доступных рекламных кабинетов можно получить с помщью функции vkGetAdAccounts.
- client_id - Идентификатор клиента, у которого запрашиваются рекламные объявления. Доступно и обязательно для рекламных агентств.
- include_deleted - Логическое TRUE или FALSE, флаг, задающий необходимость вывода архивных объявлений.
- campaign_ids - Числовой вектор, фильтр по рекламным кампаниям.
- ad_ids - Числовой вектор, фильтр по рекламным объявлениям.
- status_names - Логическое TRUE или FALSE, если значение TRUE то формат объявления, статус модерации объявления, тип оплаты, метка о возрастном ограничении объявления и статус объявления будут возвращены в виде строковых значений, если передать в аргумент status_names значение FALSE то перечисленные значения будут возвращены в виде их ID.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
#Получаем список объявлений с описанием их внешнего вида
my_vk_ads <- vkGetAdsLayout(account_id = 11111111,
access_token = my_tok$access_token)
- account_id - Идентификатор рекламного кабинета, список всех доступных рекламных кабинетов можно получить с помщью функции vkGetAdAccounts.
- client_id - Идентификатор клиента, у которого запрашиваются рекламные объявления. Доступно и обязательно для рекламных агентств.
- include_deleted - Логическое TRUE или FALSE, флаг, задающий необходимость вывода архивных объявлений.
- campaign_ids - Числовой вектор, фильтр по рекламным кампаниям.
- ad_ids - Числовой вектор, фильтр по рекламным объявлениям.
- status_names - Логическое TRUE или FALSE, если значение TRUE то формат объявления и тип оплаты будут возвращены в виде строковых значений, если передать в аргумент status_names значение FALSE то перечисленные значения будут возвращены в виде их ID.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
- id - идентификатор объявления.
- campaign_id - идентификатор кампании.
- ad_format - формат объявления
- cost_type - тип оплаты (0 — оплата за переходы, 1 — оплата за показы)
- video - 1 — объявление является видеорекламой.
- title - заголовок объявления.
- description - описание объявления.
- link_url - ссылка на рекламируемый объект.
- link_domain - домен рекламируемого сайта.
- preview_link - ссылка, перейдя по которой можно просмотреть рекламное объявление так, как оно выглядит на сайте. Ссылка доступна в течение 30 минут после выполнения метода ads.getAdsLayout функции.
- image_src - url изображения объявления.
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
#Получаем список рекламных кампаний
my_vk_campaigns <- vkGetAdCampaigns(account_id = 11111111,
access_token = my_tok$access_token)
- account_id - Идентификатор рекламного кабинета, список всех доступных рекламных кабинетов можно получить с помщью функции vkGetAdAccounts.
- client_id - Идентификатор клиента, у которого запрашиваются рекламные объявления. Доступно и обязательно для рекламных агентств.
- include_deleted - Логическое TRUE или FALSE, флаг, задающий необходимость вывода архивных объявлений.
- campaign_ids - Числовой вектор, фильтр по рекламным кампаниям.
- status_names - Логическое TRUE или FALSE, если значение TRUE то статус кампании будет возвращён в виде строкового значения, если указать значение FALSE будет возвращён ID статуса кампании.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
Получить статистику показателей эффективности по рекламным объявлениям, кампаниям, клиентам или всему кабинету.
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
##Получаем список рекламных кампаний
camp <- vkGetAdCampaigns(account_id = 11111111, access_token = my_tok$access_token)
##Получаем статистику по рекламным кампаниям по дням
vk_stat_by_campaign <- vkGetAdStatistics(account_id = 11111111,
ids_type = "campaign",
ids = camp$id ,
period = "day",
date_from = "2010-01-01",
date_to = "2017-09-10",
access_token = my_tok$access_token)
- account_id - Идентификатор рекламного кабинета, список всех доступных рекламных кабинетов можно получить с помщью функции vkGetAdAccounts.
- ids_type - Тип запрашиваемых объектов, которые перечислены в параметре ids, допустимые значения:
- ad — объявления
- campaign — кампании
- client — клиенты
- office — кабинет
- ids - Перечисленные через запятую id запрашиваемых объявлений, кампаний, клиентов или кабинета, в зависимости от того, что указано в параметре ids_type.
- period - Способ группировки данных по датам, допустимые значения:
- day — статистика по дням
- month — статистика по месяцам
- overall — статистика за всё время
- date_from - Начальная дата выводимой статистики. Используется разный формат дат для разного значения параметра period
- day: YYYY-MM-DD, пример: 2011-09-27 - 27 сентября 2011
- month: YYYY-MM, пример: 2011-09 - сентябрь 2011
- overall: 0
- date_to - Конечная дата выводимой статистики. Используется разный формат дат для разного значения параметра period:
- day: YYYY-MM-DD, пример: 2011-09-27 - 27 сентября 2011
- month: YYYY-MM, пример: 2011-09 - сентябрь 2011
- overall: 0
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
- id — id объекта из параметра ids
- type — тип объекта из параметра ids_type
- day (если period равен day) — день в формате YYYY-MM-DD
- month (если period равен month) — день в формате YYYY-MM
- overall (если period равен overall) — 1
- spent — потраченные средства
- impressions — просмотры
- clicks — клики
- reach (если ids_type равен ad или campaign и period равен day или month) — охват
- video_views (если ids_type равен ad) — просмотры видеоролика (для видеорекламы)
- video_views_half (если ids_type равен ad) — просмотры половины видеоролика (для видеорекламы)
- video_views_full (если ids_type равен ad) — просмотры целого видеоролика (для видеорекламы)
- video_clicks_site (если ids_type равен ad) — переходы на сайт рекламодателя из видеорекламы (для видеорекламы)
- join_rate (если ids_type равен ad или campaign) — вступления в группу, событие, подписки на публичную страницу или установки приложения (только если в объявлении указана прямая ссылка на соответствующую страницу ВКонтакте)
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
#Получаем остаток средств из рекламного кабинета
vk_budget <- vkGetAdBudget(account_id = 11111111,
access_token = my_tok$access_token)
- account_id - Идентификатор рекламного кабинета, список всех доступных рекламных кабинетов можно получить с помщью функции vkGetAdAccounts.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
##Получаем список рекламных кампаний
camp <- vkGetAdCampaigns(account_id = 11111111, access_token = my_tok$access_token)
##Получаем статистику по рекламным кампаниям по дням
vk_ad_city_stat_day <- vkGetAdCityStats(account_id = 11111111,
ids_type = "campaign",
ids = camp$id ,
period = "day",
date_from = "2010-01-01",
date_to = "2017-09-10",
access_token = my_tok$access_token)
- account_id - Идентификатор рекламного кабинета, список всех доступных рекламных кабинетов можно получить с помщью функции vkGetAdAccounts.
- ids_type - Тип запрашиваемых объектов, которые перечислены в параметре ids, допустимые значения:
- ad — объявления
- campaign — кампании
- ids - Перечисленные через запятую id запрашиваемых объявлений, кампаний, клиентов или кабинета, в зависимости от того, что указано в параметре ids_type.
- period - Способ группировки данных по датам, допустимые значения:
- day — статистика по дням
- month — статистика по месяцам
- overall — статистика за всё время
- date_from - Начальная дата выводимой статистики. Используется разный формат дат для разного значения параметра period
- day: YYYY-MM-DD, пример: 2011-09-27 - 27 сентября 2011
- month: YYYY-MM, пример: 2011-09 - сентябрь 2011
- overall: 0
- date_to - Конечная дата выводимой статистики. Используется разный формат дат для разного значения параметра period:
- day: YYYY-MM-DD, пример: 2011-09-27 - 27 сентября 2011
- month: YYYY-MM, пример: 2011-09 - сентябрь 2011
- overall: 0
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
- id — id объекта из параметра ids
- type — тип объекта из параметра ids_type
- day (если period равен day) — день в формате YYYY-MM-DD
- month (если period равен month) — день в формате YYYY-MM
- overall (если period равен overall) — 1
- city_id — id города или other для остальных городов
- city_name — id города или other для остальных городов
- impressions_rate — часть аудитории, просмотревшая объявление, от 0 до 1.
- clicks_rate — часть аудитории, кликнувшая по объявлению, от 0 до 1.
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
##Получаем список рекламных кампаний
camp <- vkGetAdCampaigns(account_id = 11111111, access_token = my_tok$access_token)
##Получаем статистику по рекламным кампаниям по дням
vk_ad_gender_stat_day <- vkGetAdGenderStats(account_id = 11111111,
ids_type = "campaign",
ids = camp$id ,
period = "day",
date_from = "2010-01-01",
date_to = "2017-09-10",
access_token = my_tok$access_token)
- account_id - Идентификатор рекламного кабинета, список всех доступных рекламных кабинетов можно получить с помщью функции vkGetAdAccounts.
- ids_type - Тип запрашиваемых объектов, которые перечислены в параметре ids, допустимые значения:
- ad — объявления
- campaign — кампании
- ids - Перечисленные через запятую id запрашиваемых объявлений, кампаний, клиентов или кабинета, в зависимости от того, что указано в параметре ids_type.
- period - Способ группировки данных по датам, допустимые значения:
- day — статистика по дням
- month — статистика по месяцам
- overall — статистика за всё время
- date_from - Начальная дата выводимой статистики. Используется разный формат дат для разного значения параметра period
- day: YYYY-MM-DD, пример: 2011-09-27 - 27 сентября 2011
- month: YYYY-MM, пример: 2011-09 - сентябрь 2011
- overall: 0
- date_to - Конечная дата выводимой статистики. Используется разный формат дат для разного значения параметра period:
- day: YYYY-MM-DD, пример: 2011-09-27 - 27 сентября 2011
- month: YYYY-MM, пример: 2011-09 - сентябрь 2011
- overall: 0
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
- id — id объекта из параметра ids
- type — тип объекта из параметра ids_type
- day (если period равен day) — день в формате YYYY-MM-DD
- month (если period равен month) — день в формате YYYY-MM
- overall (если period равен overall) — 1
- gender — пол, f - женский, m - мужской
- impressions_rate — часть аудитории, просмотревшая объявление, от 0 до 1.
- clicks_rate — часть аудитории, кликнувшая по объявлению, от 0 до 1.
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
##Получаем список рекламных кампаний
camp <- vkGetAdCampaigns(account_id = 11111111, access_token = my_tok$access_token)
##Получаем статистику по рекламным кампаниям по дням
vk_ad_age_stat_day <- vkGetAdAgeStats(account_id = 1,
ids_type = "campaign",
ids = camp$id ,
period = "day",
date_from = "2010-01-01",
date_to = "2017-09-10",
access_token = my_tok$access_token)
- account_id - Идентификатор рекламного кабинета, список всех доступных рекламных кабинетов можно получить с помщью функции vkGetAdAccounts.
- ids_type - Тип запрашиваемых объектов, которые перечислены в параметре ids, допустимые значения:
- ad — объявления
- campaign — кампании
- ids - Перечисленные через запятую id запрашиваемых объявлений, кампаний, клиентов или кабинета, в зависимости от того, что указано в параметре ids_type.
- period - Способ группировки данных по датам, допустимые значения:
- day — статистика по дням
- month — статистика по месяцам
- overall — статистика за всё время
- date_from - Начальная дата выводимой статистики. Используется разный формат дат для разного значения параметра period
- day: YYYY-MM-DD, пример: 2011-09-27 - 27 сентября 2011
- month: YYYY-MM, пример: 2011-09 - сентябрь 2011
- overall: 0
- date_to - Конечная дата выводимой статистики. Используется разный формат дат для разного значения параметра period:
- day: YYYY-MM-DD, пример: 2011-09-27 - 27 сентября 2011
- month: YYYY-MM, пример: 2011-09 - сентябрь 2011
- overall: 0
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
- id — id объекта из параметра ids
- type — тип объекта из параметра ids_type
- day (если period равен day) — день в формате YYYY-MM-DD
- month (если period равен month) — день в формате YYYY-MM
- overall (если period равен overall) — 1
- age — возрастная группа (12-18, 18-21, 21-24, 24-27, 27-30, 30-35, 35-45, 45-100)
- impressions_rate — часть аудитории, просмотревшая объявление, от 0 до 1.
- clicks_rate — часть аудитории, кликнувшая по объявлению, от 0 до 1.
Получить статистику по охвату аудитории по рекламным кампаним или объявления в разрезе пола и возраста
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
##Получаем список рекламных кампаний
camp <- vkGetAdCampaigns(account_id = 11111111, access_token = my_tok$access_token)
##Получаем статистику по рекламным кампаниям по дням
vk_ad_gender_age_stat_day <- vkGetAdGenderAgeStats(account_id = 11111111,
ids_type = "campaign",
ids = camp$id ,
period = "day",
date_from = "2010-01-01",
date_to = "2017-09-10",
access_token = my_tok$access_token)
- account_id - Идентификатор рекламного кабинета, список всех доступных рекламных кабинетов можно получить с помщью функции vkGetAdAccounts.
- ids_type - Тип запрашиваемых объектов, которые перечислены в параметре ids, допустимые значения:
- ad — объявления
- campaign — кампании
- ids - Перечисленные через запятую id запрашиваемых объявлений, кампаний, клиентов или кабинета, в зависимости от того, что указано в параметре ids_type.
- period - Способ группировки данных по датам, допустимые значения:
- day — статистика по дням
- month — статистика по месяцам
- overall — статистика за всё время
- date_from - Начальная дата выводимой статистики. Используется разный формат дат для разного значения параметра period
- day: YYYY-MM-DD, пример: 2011-09-27 - 27 сентября 2011
- month: YYYY-MM, пример: 2011-09 - сентябрь 2011
- overall: 0
- date_to - Конечная дата выводимой статистики. Используется разный формат дат для разного значения параметра period:
- day: YYYY-MM-DD, пример: 2011-09-27 - 27 сентября 2011
- month: YYYY-MM, пример: 2011-09 - сентябрь 2011
- overall: 0
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
- id — id объекта из параметра ids
- type — тип объекта из параметра ids_type
- day (если period равен day) — день в формате YYYY-MM-DD
- month (если period равен month) — день в формате YYYY-MM
- overall (если period равен overall) — 1
- gender - пол (f — женщины, m — мужчины)
- age — возрастная группа (12-18, 18-21, 21-24, 24-27, 27-30, 30-35, 35-45, 45-100)
- impressions_rate — часть аудитории, просмотревшая объявление, от 0 до 1
- clicks_rate — часть аудитории, кликнувшая по объявлению, от 0 до 1
Получить подробную статистику по охвату рекламных записей из объявлений и кампаний для продвижения записей сообщества
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
##Получаем список рекламных кампаний
camp <- vkGetAdCampaigns(account_id = 11111111, access_token = my_tok$access_token)
#Получаем данные по охвату в разрезе рекламных кампаний
post_reach <- vkGetAdPostsReach(account_id = 11111111,
ids_type = "campaign",
ids = camp$id,
access_token = my_tok$access_token)
- account_id - Идентификатор рекламного кабинета, список всех доступных рекламных кабинетов можно получить с помщью функции vkGetAdAccounts.
- ids_type - Тип запрашиваемых объектов, которые перечислены в параметре ids, допустимые значения:
- ad — объявления
- campaign — кампании
- ids - Перечисленные через запятую id запрашиваемых объявлений, кампаний, клиентов или кабинета, в зависимости от того, что указано в параметре ids_type.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
- id — ID объекта из параметра ids
- reach_subscribers - Охват подписчиков
- reach_total - Суммарный охват
- links - Переходы по ссылке
- to_group - Переходы в сообщество
- join_group - Вступления в сообщество
- report - Количество жалоб на запись
- hide - Количество скрытий записи
- unsubscribe - Количество отписавшихся участников
- video_views_start - Количество стартов просмотра видео
- video_views_3s - Количество досмотров видео до 3 секунд
- video_views_25p - Количество досмотров видео до 25 процентов
- video_views_50p - Количество досмотров видео до 50 процентов
- video_views_75p - Количество досмотров видео до 75 процентов
- video_views_100p - Количество досмотров видео до 100 процентов
Во всех примерах этого раздела подразумевается что вы сначала прошли процесс авторизации с помощью функции vkAuth, пример кода ниже:
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 1,app_secret = "H2Pk8htyFD8024mZaPHm")
Получить данные о количестве просмотров, посетителях, подписавшихся и отписавшихся посетителей по дням
communityData <- vkGetGroupStat(date_from = "2016-01-01",
date_to = "2016-04-01",
group_id = 1,
access_token = my_tok$access_token)
- date_from - Начальная дата выводимой статистики в формате YYYY-MM-DD.
- date_to - Конечная дата выводимой статистики в формате YYYY-MM-DD.
- group_id - Идентификатор сообщества.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
communityDataAge <- vkGetGroupStatAge(date_from = "2016-01-01",
date_to = "2016-04-01",
group_id = 1,
access_token = my_tok$access_token)
- date_from - Начальная дата выводимой статистики в формате YYYY-MM-DD.
- date_to - Конечная дата выводимой статистики в формате YYYY-MM-DD.
- group_id - Идентификатор сообщества.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
communityDataGender <- vkGetGroupStatGender(date_from = "2016-01-01",
date_to = "2016-04-01",
group_id = 1,
access_token = my_tok$access_token)
- date_from - Начальная дата выводимой статистики в формате YYYY-MM-DD.
- date_to - Конечная дата выводимой статистики в формате YYYY-MM-DD.
- group_id - Идентификатор сообщества.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
communityDataGenderAge <- vkGetGroupStatGenderAge(date_from = "2016-01-01",
date_to = "2016-04-01",
group_id = 1,
access_token = my_tok$access_token)
- date_from - Начальная дата выводимой статистики в формате YYYY-MM-DD.
- date_to - Конечная дата выводимой статистики в формате YYYY-MM-DD.
- group_id - Идентификатор сообщества.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
communityDataCity <- vkGetGroupStatCity(date_from = "2016-01-01",
date_to = "2016-04-01",
group_id = 1,
access_token = my_tok$access_token)
- date_from - Начальная дата выводимой статистики в формате YYYY-MM-DD.
- date_to - Конечная дата выводимой статистики в формате YYYY-MM-DD.
- group_id - Идентификатор сообщества.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
communityDataCountries <- vkGetGroupStatCountries(date_from = "2016-01-01",
date_to = "2016-04-01",
group_id = 1,
access_token = my_tok$access_token)
- date_from - Начальная дата выводимой статистики в формате YYYY-MM-DD.
- date_to - Конечная дата выводимой статистики в формате YYYY-MM-DD.
- group_id - Идентификатор сообщества.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
## Авторизация в вк
my_tok <- vkAuth(app_id = 1, app_secret = "H2Pk8htyFD8024mZaPHm")
## Получаем список сообщений сообщества
my_vk_wall <- vkGetUserWall(user_id = -111111,
access_token = my_tok$access_token)
## Получаем подрубную статистику по последним 300 записям сообщества
post_reach <- vkGetGroupStatPostReach(owner_id = -2222222,
post_ids = my_vk_wall$id,
access_token = my_tok$access_token)
- owner_id - Идентификатор сообщества — владельца записи. Указывается со знаком «минус».
- post_ids - Векор содержащий идентификаторы записей, обратите внимание — данные по статистике доступны только для 300 последних (самых свежих) записей на стене сообщества.
- api_version - Необзательный аргумент, номер версии API к которой будет выполнен запрос.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken.
Во всех примерах этого раздела подразумевается что вы сначала прошли процесс авторизации с помощью функции vkAuth, пример кода ниже:
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 1,app_secret = "H2Pk8htyFD8024mZaPHm")
##Получаем список стран
vk_countries <- vkGetDbCountries(need_all = T,
code = c("RU","UA","BY"),
access_token = my_tok$access_token)
- need_all - Логическое TRUE или FALSE, флаг - вернуть список всех стран.
- code - Текстовый вектор, двухбуквенные коды стран в стандарте ISO 3166-1 alpha-2, для которых необходимо выдать информацию. Пример c("RU","UA","BY"), список всех кодов можно посмотреть по ссылке - https://vk.com/dev/country_codes. Не обязательный аргумент.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
##Получаем справочник городов Украины, т.к. id Украины = 2
vk_cities <- vkGetDbCities(country_id = 2,
access_token = my_tok$access_token)
- country_id - Идентификатор страны, полученный с помощью функции vkGetDbCountries.
- region_id - Идентификатор региона, города которого необходимо получить. (параметр не обязателен).}
- q - Строка поискового запроса. Например, "Санкт". Максимальная длина строки — 15 символов.
- need_all - Логическое TRUE или FALSE, флаг - вернуть список всех городов страны указанной в аргументе country_id.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
##Получаем справочник городов Украины, т.к. id Украины = 2, по запросу "Оде"
vk_regions_search <- vkGetDbRegions(country_id = 2,
q = "Оде",
access_token = my_tok$access_token)
- country_id - Идентификатор страны, полученный с помощью функции vkGetDbCountries.
- q - Строка поискового запроса. Например, "Санкт". Максимальная длина строки — 15 символов.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken
Во всех примерах этого раздела подразумевается что вы сначала прошли процесс авторизации с помощью функции vkAuth, пример кода ниже:
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 1,app_secret = "H2Pk8htyFD8024mZaPHm")
my_vk_friends <- vkGetUserfriends(user_id = 7437995,
access_token = my_tok$access_token)
- user_id - Идентификатор пользователя, для которого необходимо получить список друзей. Если параметр не задан, то считается, что он равен идентификатору текущего пользователя.
- name_case - Падеж для склонения имени и фамилии пользователя. Возможные значения:
- именительный – nom
- родительный – gen
- дательный – dat
- винительный – acc
- творительный – ins
- предложный – abl
- По умолчанию - nom
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_tokenТокен доступа к API, полученный с помощью функций vkAuth или vkGetToken
- user_id - Идентификатор пользователя.
- first_name - Имя.
- last_name - Фамилия.
- gender - Пол.
- nickname - Никнейм (отчество) пользователя.
- domain - Короткий адрес страницы. Возвращается строка, содержащая короткий адрес страницы (например, andrew). Если он не назначен, возвращается "id"+user_id, например, id35828305.
- bdate - Дата рождения. Возвращается в формате D.M.YYYY или D.M (если год рождения скрыт). Если дата рождения скрыта целиком, поле отсутствует в ответе.
- city - ID города, название города можно получить с помощью функции vkGetDbCities.
- country - ID страны, название страны можно получить с помощью функции vkGetDbCountries.
- photo_50 - Url квадратной фотографии пользователя, имеющей ширину 50 пикселей. В случае отсутствия у пользователя фотографии возвращается http://vk.com/images/camera_c.gif.
- photo_100 - Url квадратной фотографии пользователя, имеющей ширину 100 пикселей. В случае отсутствия у пользователя фотографии возвращается http://vk.com/images/camera_b.gif.
- photo_200_orig - Url фотографии пользователя, имеющей ширину 200 пикселей. В случае отсутствия у пользователя фотографии возвращается http://vk.com/images/camera_a.gif.
- has_mobile - Информация о том, известен ли номер мобильного телефона пользователя. Возвращаемые значения: 1 — известен, 0 — не известен.
- online - Информация о том, находится ли пользователь сейчас на сайте.
- can_post - Информация о том, может ли текущий пользователь оставлять записи на стене. Возможные значения:
- 1 — может
- 0 — не может.
- can_see_all_posts - Информация о том, может ли текущий пользователь видеть чужие записи на стене. Возможные значения:
- 1 — может
- 0 — не может.
- can_write_private_message - Информация о том, может ли текущий пользователь отправить личное сообщение. Возможные значения:
- 1 — может
- 0 — не может.
- status - Статус пользователя. Возвращается строка, содержащая текст статуса, расположенного в профиле под именем пользователя.
- last_seen_time - Дата и время время последнего посещения.
- last_seen_platform - Тип платформы, через которую был осуществлён последний вход. Возможные значения:
- 1 — мобильная версия
- 2 — приложение для iPhone
- 3 — приложение для iPad
- 4 — приложение для Android
- 5 — приложение для Windows Phone
- 6 — приложение для Windows 10
- 7 — полная версия сайта.
- university - Идентификатор университета.
- university_name - Название университета.
- faculty - Идентификатор факультета.
- faculty_name - Название факультета.
- graduation - Год окончания.
- education_form - Форма обучения
- education_status - Статус (например, "Выпускник (специалист)")
- relation - Семейное положение пользователя. Возможные значения:
- 1 — не женат/не замужем
- 2 — есть друг/есть подруга
- 3 — помолвлен/помолвлена
- 4 — женат/замужем
- 5 — всё сложно
- 6 — в активном поиске
- 7 — влюблён/влюблена
- 8 — в гражданском браке
- 0 — не указано.}
my_vk_community <- vkGetUserGroups(user_id = 7437995,
access_token = my_tok$access_token)
- user_id - Идентификатор пользователя, для которого необходимо получить список друзей. Если параметр не задан, то считается, что он равен идентификатору текущего пользователя.
- filter - Текстовый вектор фильтров сообществ, которые необходимо вернуть. Возможные значения
- admin - сообщества, в которых пользователь является администратором
- editor - администратором или редактором
- moder – администратором, редактором или модератором
- groups – группы
- publics – публичные страницы
- events – мероприятия
- По умолчанию возвращаются все сообщества пользователя.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_tokenТокен доступа к API, полученный с помощью функций vkAuth или vkGetToken
- gid - Идентификатор сообщества.
- name - Название сообщества.
- screen_name - Короткий адрес, например, apiclub.
- is_closed - Является ли сообщество закрытым. Возможные значения:
- 0 — открытое
- 1 — закрытое
- 2 — частное
- type - Тип сообщества:
- group — группа
- page — публичная страница
- event — мероприятие.
- description - Текст описания сообщества.
- wiki_page - Название главной вики-страницы.
- members_count - Количество участников.
- start_date - Дата основания.
- can_post - Информация о том, может ли текущий пользователь оставлять записи на стене сообщества. Возможные значения:
- 1 — может
- 0 — не может.
- can_see_all_posts - Информация о том, разрешено ли видеть чужие записи на стене группы. Возможные значения:
- 1 — может
- 0 — не может.
- activity - Строка состояния публичной страницы. У групп возвращается строковое значение, открыта ли группа или нет, а у событий дата начала.
- status - Статус сообщества.
- fixed_post - Идентификатор закрепленной записи.
- verified - Информация о том, верифицировано ли сообщество. Возможные значения:
- 1 — может
- 0 — не может.
- site - Адрес сайта из поля «веб-сайт» в описании сообщества.
- can_create_topic - Информация о том, может ли текущий пользователь создать новое обсуждение в группе. Возможные значения:
- 1 — может,
- 0 — не может.
- photo - URL главной фотографии с размером 50x50px.
- photo_medium - URL главной фотографии с размером 100х100px.
- photo_big - URL главной фотографии в максимальном размере.
library(rvkstat)
#Получаем ключ доступа для сообщества
group_token <- vkGetGroupToken(app_id = 111111, group_ids = 222222)
#Получаем список диалогов
message <- vkGetUserDialogs(access_token = group_token)
- offset - Целое число, смещение, необходимое для выборки определенного подмножества диалогов.}
- count - Положительное число, по умолчанию 20, максимальное значение 200, количество диалогов, которое необходимо получить. }
- start_message_id - Положительное число, идентификатор сообщения, начиная с которого нужно вернуть список диалогов. Деали смотрите ниже.}
- preview_length - Положительное число, количество символов, по которому нужно обрезать сообщение. Укажите 0, если Вы не хотите обрезать сообщение. (по умолчанию сообщения не обрезаются). Обратите внимание, текст обрезается по словам, точное число символов может не совпадать с указанным значением. }
- unread - 1 — вернуть только диалоги, в которых есть непрочитанные входящие сообщения. По умолчанию: 0.}
- important - 1 — вернуть диалоги с пометкой «Важные» (для сообщений сообществ).}
- unanswered - 1 — вернуть диалоги с пометкой «Неотвеченные» (для сообщений сообществ).}
- api_version - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken}
- access_token - Токен доступа к API, полученный с помощью функций vkAuth или vkGetToken}
- id - идентификатор сообщения (не возвращается для пересланных сообщений).
- date - дата отправки сообщения.
- out - тип сообщения (0 — полученное, 1 — отправленное, не возвращается для пересланных сообщений).
- user_id - идентификатор пользователя, в диалоге с которым находится сообщение.
- read_state - статус сообщения (0 — не прочитано, 1 — прочитано, не возвращается для пересланных сообщений).
- title - заголовок сообщения или беседы.
- body - текст сообщения.
- random_id - идентификатор, используемый при отправке сообщения. Возвращается только для исходящих сообщений.
my_vk_wall <- vkGetUserWall(user_id = 7437995,
access_token = my_tok$access_token)
- user_id - Идентификатор пользователя, для которого необходимо получить список друзей. Если параметр не задан, то считается, что он равен идентификатору текущего пользователя.
- domain - Короткий адрес пользователя
- filter - определяет, какие типы записей на стене необходимо получить. Возможные значения:
- suggests — предложенные записи на стене сообщества
- postponed — отложенные записи
- owner — записи владельца стены
- others — записи не от владельца стены
- all — все записи на стене (owner + others)
- По умолчанию: all.
- api_version - Версия API к который вы будете обращаться, список актуальных версий доступен по ссылке.
- access_tokenТокен доступа к API, полученный с помощью функций vkAuth или vkGetToken
- id - Идентификатор записи.
- from_id - Идентификатор автора записи.
- to_id - Идентификатор владельца стены, на которой размещена запись.
- date - Время публикации записи
- post_type - Тип записи, может принимать следующие значения: post, copy, reply, postpone, suggest.
- text - Текст записи.
- can_delete - Информация о том, может ли текущий пользователь удалить запись
- 1 — может
- 0 — не может.
- comments_count - Кличество комментариев.
- likes_count - Число пользователей, которым понравилась запись.
- reposts_count - Число пользователей, скопировавших запись.
- attachment_type - Тип медиавложения записи (фотографии, ссылки и т.п.)
- Как перенести данные из ВКонтакте в Power BI (Блог Netpeak), Алексей Селезнёв
- Загрузка статистики из «ВКонтакте» и Facebook в Google BigQuery — руководство (ppc.world), Михаил Гусев
Контакты
email: [email protected] skype: selesnow telegram: @AlexeySeleznev |
|
Vkontakte | Blog | GitHub | Stepic |