window.dataLayer = window.dataLayer || []; function gtag(){dataLayer.push(arguments);} gtag('js', new Date()); gtag('config', 'UA-114798296-1');
ul.nm_ul { list-style: none; /*убираем маркеры списка*/ margin: 0; /*убираем отступы*/ padding-left: 0; /*убираем отступы*/ margin-top:25px; /*делаем отступ сверху*/ background:#DCDCDC; /*добавляем фон всему меню*/ height: 30px; /*задаем высоту*/ } a.nm_a { text-decoration: none; /*убираем подчеркивание текста ссылок*/ background:#696969; /*добавляем фон к пункту меню*/ color:#fff; /*меняем цвет ссылок*/ padding:0px 5px; /*добавляем отступ*/ font-family: arial; /*меняем шрифт*/ line-height:30px; /*ровняем меню по вертикали*/ display: block; border-right: 1px solid #677B27; /*добавляем бордюр справа*/ -moz-transition: all 0.3s 0.01s ease; /*делаем плавный переход*/ -o-transition: all 0.3s 0.01s ease; -webkit-transition: all 0.3s 0.01s ease; } a.nm_a:hover { background:#FF8C00;/*добавляем эффект при наведении*/ } li.nm_li { float:left; /*Размещаем список горизонтально для реализации меню*/ position:relative; /*задаем позицию для позиционирования*/ } /*Стили для скрытого выпадающего меню*/ li.nm_li > ul.nm_ul { position:absolute; top:5px; display:none; } /*Делаем скрытую часть видимой*/ li.nm_li:hover > ul.nm_ul { display:block; width:280px; /*Задаем ширину выпадающего меню*/ } li.nm_li:hover > ul.nm_ul > li.nm_li { float:none; /*Убираем горизонтальное позиционирование*/ }Вы можете поддержать проект любой произвольной суммой воспользовавшись кнопкой или перейдя по этой ссылке.
function runWfpWdgt(url){var wayforpay=new Wayforpay();wayforpay.invoice(url);}Оплатить
У пакета rvkstat
есть свой официальный плейлист с урока на YouTube.
Пакет rvkstat является R клиентом для работы с API социальной сети Вконтакте, с помощью функций данного пакета можно получить статистику из рекламного кабинета Вконтакте, а так же данные о посетителях сообществ вконтакте по дням, в разрезе возрастных групп, пола и геолокации посетителей.
Все функции входящие в пакет rvkstat имеюи префикс vk.
Все функции пакета разделены на блоки, определить к какому блоку относится функция можно из её названия, название блока к которому относится функция идёт сразу после префикса vk:
Все функции пакета имеют подробное описание на русском языке, получить детальную справку по любой функции пакета 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:
if(!"devtools" %in% installed.packages()[,1]){install.packages("devtools")}
library(devtools)
install_github("selesnow/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 есть три функции:
Для получения ключа доступа пользователя по схеме Implicit Flow воспользуйтесь следующим кодом:
myToken <- vkGetToken(app_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 вашего приложения, вместо <Защищённый Ключ Вашего Приложения> укажите защищёный ключ вашего приложения, оба аргумента можно посмотреть на странице настройки приложения как описано в разделе "Что необходимо для начала работы с 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)
##Авторизация в вк
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
##Запрос списка доступных рекламных кабинетов
my_vk_acc <- vkGetAdAccounts(my_tok$access_token)
##Авторизация в вк
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
##Запрос списка доступных рекламных кабинетов
my_vk_clients <- vkGetAdClients(account_id = 11111111, access_token = my_tok$access_token)
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
#Получаем список объявлений
my_vk_ads <- vkGetAds(account_id = 11111111,
access_token = my_tok$access_token)
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
#Получаем список объявлений с описанием их внешнего вида
my_vk_ads <- vkGetAdsLayout(account_id = 11111111,
access_token = my_tok$access_token)
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
#Получаем список рекламных кампаний
my_vk_campaigns <- vkGetAdCampaigns(account_id = 11111111,
access_token = my_tok$access_token)
##Авторизация в вконтакте
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)
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 11111111,app_secret = "H2Pk8htyFD8024mZaPHm")
#Получаем остаток средств из рекламного кабинета
vk_budget <- vkGetAdBudget(account_id = 11111111,
access_token = my_tok$access_token)
##Авторизация в вконтакте
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)
##Авторизация в вконтакте
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)
##Авторизация в вконтакте
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)
##Авторизация в вконтакте
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)
##Авторизация в вконтакте
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)
Во всех примерах этого раздела подразумевается что вы сначала прошли процесс авторизации с помощью функции 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)
communityDataAge <- vkGetGroupStatAge(date_from = "2016-01-01",
date_to = "2016-04-01",
group_id = 1,
access_token = my_tok$access_token)
communityDataGender <- vkGetGroupStatGender(date_from = "2016-01-01",
date_to = "2016-04-01",
group_id = 1,
access_token = my_tok$access_token)
communityDataGenderAge <- vkGetGroupStatGenderAge(date_from = "2016-01-01",
date_to = "2016-04-01",
group_id = 1,
access_token = my_tok$access_token)
communityDataCity <- vkGetGroupStatCity(date_from = "2016-01-01",
date_to = "2016-04-01",
group_id = 1,
access_token = my_tok$access_token)
communityDataCountries <- vkGetGroupStatCountries(date_from = "2016-01-01",
date_to = "2016-04-01",
group_id = 1,
access_token = my_tok$access_token)
## Авторизация в вк
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)
Во всех примерах этого раздела подразумевается что вы сначала прошли процесс авторизации с помощью функции 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)
##Получаем справочник городов Украины, т.к. id Украины = 2
vk_cities <- vkGetDbCities(country_id = 2,
access_token = my_tok$access_token)
##Получаем справочник городов Украины, т.к. id Украины = 2, по запросу "Оде"
vk_regions_search <- vkGetDbRegions(country_id = 2,
q = "Оде",
access_token = my_tok$access_token)
Во всех примерах этого раздела подразумевается что вы сначала прошли процесс авторизации с помощью функции vkAuth, пример кода ниже:
##Авторизация в вконтакте
my_tok <- vkAuth(app_id = 1,app_secret = "H2Pk8htyFD8024mZaPHm")
my_vk_friends <- vkGetUserfriends(user_id = 7437995,
access_token = my_tok$access_token)
my_vk_community <- vkGetUserGroups(user_id = 7437995,
access_token = my_tok$access_token)
library(rvkstat)
#Получаем ключ доступа для сообщества
group_token <- vkGetGroupToken(app_id = 111111, group_ids = 222222)
#Получаем список диалогов
message <- vkGetUserDialogs(access_token = group_token)
my_vk_wall <- vkGetUserWall(user_id = 7437995,
access_token = my_tok$access_token)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.