Оптимизируйте свои подборки Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Real Time Reporting API сейчас на стадии бета-тестирования. Чтобы получить к нему доступ, зарегистрируйтесь.
В реальном времени возвращает данные по представлению (профилю). Испытайте его в действии или изучите пример.
Запрос
HTTP-запрос
GET https://www.googleapis.com/analytics/v3/data/realtime
Параметры
Название параметра Значение ОписаниеОбязательные параметры | ||
ids | string | Уникальный идентификатор таблицы для извлечения данных Google Analytics. Имеет вид ga:XXXX, где XXXX – это идентификатор представления (профиля) Google Analytics. |
metrics | string | Разделенный запятыми список показателей Google Analytics. Например, «rt:activeUsers». Необходимо указать хотя бы один показатель. |
Необязательные параметры | ||
dimensions | string | Разделенный запятыми список параметров отчетов «В режиме реального времени». Например, «rt:medium,rt:city». |
filters | string | Разделенный запятыми список фильтров параметров или показателей, которые будут применяться к отчетам «В режиме реального времени». |
max-results | integer | Максимально допустимое количество записей, включаемых в фид. |
sort | string | Разделенный запятыми список параметров или показателей, которые будут определять порядок сортировки отчетов «В режиме реального времени». |
Авторизация
Для выполнения этого запроса требуется авторизация как минимум в одной из следующих областей доступа. Подробнее.
Java EE для начинающих. Урок 6: URL параметры GET — запроса.
Область доступаhttps://www.googleapis.com/auth/analytics |
https://www.googleapis.com/auth/analytics.readonly |
Тело запроса
При работе с данным методом тело запроса не используется.
Ответ
В случае успеха этот метод возвращает ресурс RealTimeData в теле ответа.
Примеры
Примечание. Примеры кода для этого метода не охватывают все поддерживаемые языки программирования (их список опубликован на странице, посвященной клиентским библиотекам).
Java
/** * 1. Create and Execute a Real Time Report * An application can request real-time data by calling the get method on the Analytics service object. * The method requires an ids parameter which specifies from which view (profile) to retrieve data. * For example, the following code requests real-time data for view (profile) ID 56789. */ Get realtimeRequest = analytics.data().realtime() .get(«ga:56789», «rt:activeUsers») .setDimensions(«rt:medium»); try < RealtimeData realtimeData = realtimeRequest.execute(); // Success. > catch (GoogleJsonResponseException e) < // Catch API specific errors. handleApiError(e); >catch (IOException e) < // Catch general parsing network errors. e.printStackTrace(); >/** * 2. Print out the Real-Time Data * The components of the report can be printed out as follows: */ private void printRealtimeReport(RealtimeData realtimeData) < System.out.println(); System.out.println(«Response:»); System.out.println(«ID:» + realtimeData.getId()); System.out.println(«realtimeData Kind: » + realtimeData.getKind()); System.out.println(); printQueryInfo(realtimeData.getQuery()); printProfileInfo(realtimeData.getProfileInfo()); printPaginationInfo(realtimeData); printDataTable(realtimeData); >private void printQueryInfo(Query query) < System.out.println(«Query Info:»); System.out.println(«Ids: » + query.getIds()); System.out.println(«Metrics: » + query.getMetrics()); System.out.println(«Dimensions: » + query.getDimensions()); System.out.println(«Sort: » + query.getSort()); System.out.println(«Filters: » + query.getFilters()); System.out.println(«Max results: » + query.getMaxResults()); System.out.println(); >private void printProfileInfo(ProfileInfo profileInfo) < System.out.println(«Info:»); System.out.println(«Account ID:» + profileInfo.getAccountId()); System.out.println(«Web Property ID:» + profileInfo.getWebPropertyId()); System.out.println(«Profile ID:» + profileInfo.getProfileId()); System.out.println(«Profile Name:» + profileInfo.getProfileName()); System.out.println(«Table Id:» + profileInfo.getTableId()); System.out.println(); >private void printPaginationInfo(RealtimeData realtimeData) < System.out.println(«Pagination info:»); System.out.println(«Self link: » + realtimeData.getSelfLink()); System.out.println(«Total Results: » + realtimeData.getTotalResults()); System.out.println(); >private void printDataTable(RealtimeData realtimeData) < if (realtimeData.getTotalResults() >0) < System.out.println(«Data Table:»); for (ColumnHeaders header : realtimeData.getColumnHeaders()) < System.out.format(«%-32s», header.getName() + ‘(‘ + header.getDataType() + ‘)’); >System.out.println(); for (List row : realtimeData.getRows()) < for (String element : row) < System.out.format(«%-32s», element); >System.out.println(); > > else < System.out.println(«No data»); >>
PHP
/** * 1.Create and Execute a Real Time Report * An application can request real-time data by calling the get method on the Analytics service object. * The method requires an ids parameter which specifies from which view (profile) to retrieve data. * For example, the following code requests real-time data for view (profile) ID 56789. */ $optParams = array( ‘dimensions’ => ‘rt:medium’); try < $results = $analytics->data_realtime->get( ‘ga:56789’, ‘rt:activeUsers’, $optParams); // Success. > catch (apiServiceException $e) < // Handle API service exceptions. $error = $e->getMessage(); > /** * 2. Print out the Real-Time Data * The components of the report can be printed out as follows: */ function printRealtimeReport($results) < printReportInfo($results); printQueryInfo($results); printProfileInfo($results); printColumnHeaders($results); printDataTable($results); printTotalsForAllResults($results); >function printDataTable( if (count($results->getRows()) > 0) < $table .= ‘
‘; // Print headers. $table .= ‘ ‘; foreach ($results->getColumnHeaders() as $header) < $table .= » . $header->name . »; > $table .= ‘‘; // Print table rows. foreach ($results->getRows() as $row) < $table .= ‘
‘; foreach ($row as $cell) < $table .= ‘‘; > $table .= ‘
‘; > $table .= ‘
‘ . htmlspecialchars($cell, ENT_NOQUOTES) . ‘ |
‘; > else < $table .= ‘
No Results Found.
Как передать параметры в GET запросе?
‘; > print $table; > function printColumnHeaders( $html = »; $headers = $results->getColumnHeaders(); foreach ($headers as $header) < $html .= Column Name = getName()> Column Type = getColumnType()> Column Data Type = getDataType()> HTML; > print $html; > function printQueryInfo( $query = $results->getQuery(); $html = Ids = getIds()> Metrics = getMetrics()> Dimensions = getDimensions()> Sort = getSort()> Filters = getFilters()> Max Results = getMax_results()> HTML; print $html; > function printProfileInfo( $profileInfo = $results->getProfileInfo(); $html = Account Property Web Property Name = getProfileName()> Table print $html; > function printReportInfo( $html = Kind = getKind()> ID = getId()> Self Link = getSelfLink()> Total Results = getTotalResults()> HTML; print $html; > function printTotalsForAllResults( $totals = $results->getTotalsForAllResults(); foreach ($totals as $metricName => $metricTotal) < $html .= «Metric Name = $metricNamen»; $html .= «Metric Total = $metricTotal»; >print $html; >
Python
# 1. Create and Execute a Real Time Report # An application can request real-time data by calling the get method on the Analytics service object. # The method requires an ids parameter which specifies from which view (profile) to retrieve data. # For example, the following code requests real-time data for view (profile) ID 56789. try: service.data().realtime().get( ids=’ga:56789′, metrics=’rt:activeUsers’, dimensions=’rt:medium’).execute() except TypeError, error: # Handle errors in constructing a query. print (‘There was an error in constructing your query : %s’ % error) except HttpError, error: # Handle API errors. print (‘Arg, there was an API error : %s : %s’ % (error.resp.status, error._get_reason())) # 2.
Print out the Real-Time Data # The components of the report can be printed out as follows: def print_realtime_report(results): print ‘**Real-Time Report Response**’ print_report_info(results) print_query_info(results.get(‘query’)) print_profile_info(results.get(‘profileInfo’)) print_column_headers(results.get(‘columnHeaders’)) print_data_table(results) print_totals_for_all_results(results) def print_data_table(results): print ‘Data Table:’ # Print headers. output = [] for header in results.get(‘columnHeaders’): output.append(‘%30s’ % header.get(‘name’)) print ».join(output) # Print rows. if results.get(‘rows’, []): for row in results.get(‘rows’): output = [] for cell in row: output.append(‘%30s’ % cell) print ».join(output) else: print ‘No Results Found’ def print_column_headers(headers): print ‘Column Headers:’ for header in headers: print ‘Column name = %s’ % header.get(‘name’) print ‘Column Type = %s’ % header.get(‘columnType’) print ‘Column Data Type = %s’ % header.get(‘dataType’) def print_query_info(query): if query: print ‘Query Info:’ print ‘Ids = %s’ % query.get(‘ids’) print ‘Metrics: = %s’ % query.get(‘metrics’) print ‘Dimensions = %s’ % query.get(‘dimensions’) print ‘Sort = %s’ % query.get(‘sort’) print ‘Filters = %s’ % query.get(‘filters’) print ‘Max results = %s’ % query.get(‘max-results’) def print_profile_info(profile_info): if profile_info: print ‘Profile Info:’ print ‘Account % profile_info.get(‘accountId’) print ‘Web Property % profile_info.get(‘webPropertyId’) print ‘Profile % profile_info.get(‘profileId’) print ‘Profile Name = %s’ % profile_info.get(‘profileName’) print ‘Table % profile_info.get(‘tableId’) def print_report_info(results): print ‘Kind = %s’ % results.get(‘kind’) print ‘ID = %s’ % results.get(‘id’) print ‘Self Link = %s’ % results.get(‘selfLink’) print ‘Total Results = %s’ % results.get(‘totalResults’) def print_totals_for_all_results(results): totals = results.get(‘totalsForAllResults’) for metric_name, metric_total in totals.iteritems(): print ‘Metric Name = %s’ % metric_name print ‘Metric Total = %s’ % metric_total
Практическое занятие
Воспользуйтесь инструментом API Explorer ниже, чтобы применить этот метод к реальным данным и посмотреть, как он работает. Также можно перейти на эту страницу.
Если не указано иное, контент на этой странице предоставляется по лицензии Creative Commons «С указанием авторства 4.0», а примеры кода – по лицензии Apache 2.0. Подробнее об этом написано в правилах сайта. Java – это зарегистрированный товарный знак корпорации Oracle и ее аффилированных лиц.
Последнее обновление: 2018-04-22 UTC.
Источник: developers.google.com
Параметры и методы
Кроме установки необходимых настроек запросов в аккаунте, вы можете передавать эти параметры через GET запрос.
ВАЖНО! Переданные параметры в GET запросе имеют приоритет перед параметрами, установленными в настройках аккаунта!
groupby
Числовое значение, ТОП позиций для сбора. Возможные значения: 10, 20, 30, 50, 100.
Кроме закладки Картинки, для которой ТОП всегда = 50 и переданное значение игнорируется;
числовое значение (id) местоположения из этого файла
Параметр определяет страну, которую следует использовать для поиска Google. Это числовое значание (id) кода страны из этого файла
Параметр определяет язык для ограничения поиска. Передается код языка из файла языков
Параметр определяет домен Google для использования. Числовое значение (id) google домена из этого файла
Устройство, на котором выполняется поиск: desktop, tablet, mobile
Источник: xmlriver.com
Региональность в Google. Get-параметр uule
В своей предыдущей статье «Региональность в Google» я упоминал о весьма актуальной проблеме для регионального поиска Google – возможности получения в своем браузере поисковой выдачи для произвольного региона, а не только для того, к какому автоматически отнесет ваш компьютер сам Google на основании вашего IP-адреса. В качестве одного из решений упоминался инструмент для предварительного просмотра объявлений – Ad Preview Tool.
Однако, в текущем виде этот инструмент имеет весьма существенные ограничения – результаты показываются в виде скриншота первой страницы выдачи, содержащей только 10 результатов, и поэтому с его помощью заглянуть дальше, чем за топ-10, нельзя. Между тем результаты работы инструмента Ad Preview Tool не всегда выдавались в виде скриншота.
Так, например, на форуме Searchengines.guru в одной из дискуссий за декабрь 2015 года упоминается о том, что можно было получить результат поиска в заданном регионе в виде URL. И приводится пример подобного URL для региона «Красноярск»: (https://www.google.ru/search?q=%D1%80%D0%B5%D0%BC%D0%BE%D0%BD%D1%82+%D0%BD%D0%BE%D1%83%D1%82%D0%B0hl=ruadtest=onigu=1nomo=1source=lnmsved=0ahUKEwimqq658LrJAhUFinIKHe5tDOsQ_AUIBygAbih=961glp=1uule=w+CAIQICIjS3Jhc25veWFyc2ssS3Jhc25veWFyc2sgS3JhaSxSdXNzaWE приводят к тому, что регион выдачи меняется на определяемый Google автоматически (в моем случае это Тула):
Теперь для другого запроса сами построим URL выдачи, содержащий только get-параметры q (текст запроса) и uule с обозначенным выше значением, и убеждаемся, что опять видим выдачу для Красноярска: Итак, теперь остается понять, каким образом построить нужное значение параметра uule для произвольного региона. Для этого я хочу вас отослать к замечательной статье “Geolocation: The Ultimate Tip to Emulate Local Search”, где подробно рассказывается о том, каким образом строится значение этого параметра.Для этого нужно: 1. Определить каноническое название на латинице интересующего региона с помощью инструмента Google Geographical Targeting. В случае Красноярска получаем значение Krasnoyarsk,Krasnoyarsk Krai,Russia 2. Определить длину канонического названия в символах. В нашем случае это значение будет равно 35. 3.
Определить значение спецсимвола () с помощью таблицы: В нашем случае это будет символ j. 4. Перекодировать каноническое название в формат Base64 (). Например, это можно сделать с помощью инструмента на сайте https://www.base64encode.org.
В нашем случае мы получим строку S3Jhc25veWFyc2ssS3Jhc25veWFyc2sgS3JhaSxSdXNzaWE 5. Скомпоновать значение параметра uule по формуле w+CAIQICI плюс плюс Итого имеем: w+CAIQICIjS3Jhc25veWFyc2ssS3Jhc25veWFyc2sgS3JhaSxSdXNzaWE Что полностью совпадает со значением параметра uule из рассмотренного нами ранее примера. Таким образом по данному алгоритму можно сконструировать значение параметра uule для любого региона, имеющего каноническое название в системе географического таргетинга Google, и добавив этот параметр со сконструированным значением в URL страницы поисковой выдачи Google, получить в своем браузере выдачу для этого региона. В качестве контрольного примера возьмем любой другой регион, например, «Брянск», и пройдем по шагам алгоритма: 1) Bryansk,Bryansk Oblast,Russia 2) 29 3) d 4) QnJ5YW5zayxCcnlhbnNrIE9ibGFzdCxSdXNzaWE 5) w+CAIQICIdQnJ5YW5zayxCcnlhbnNrIE9ibGFzdCxSdXNzaWE Подставив полученную строку в качестве значения get-параметра uule, получаем у себя в браузере выдачу для Брянска, что подтверждается пометкой внизу страницы поисковой выдачи:
Исследование Google и SOASTA: технические факторы конверсии и отказов
Практически каждый день выходят статьи о факторах, влияющих на конверсию и лояльность пользователей сайта
Николай Лавлинский 10 октября 2016
Что делать, пока ждешь CRM
Если вы думаете о своем будущем, как о будущем успешной компании, то вы точно уверены, что у вас будет CRM. «Эволюционируй, или умри» — подключи CRM или завязни в цифрах
Сергей Марченко 7 октября 2016
Источник: searchengines.guru