×
Игры с Бессознательным. Театр (03 сен 2019)

Из цикла Новые Материалы Блога.

Идея API Яндекс Метрика и Google Charts

Больше
6 мес. 3 нед. назад #11 от anton12rus
anton12rus ответил в теме API Яндекс Метрика и Google Charts
Должно, но не работает. Перед тем как выкладывать и подсказывать проверяли бы.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
6 мес. 3 нед. назад #12 от serge
serge ответил в теме API Яндекс Метрика и Google Charts

anton12rus пишет: Должно, но не работает. Перед тем как выкладывать и подсказывать проверяли бы.


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

А я смогу! - А поглядим! - А я упрямый!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
6 мес. 3 нед. назад - 6 мес. 3 нед. назад #13 от anton12rus
anton12rus ответил в теме API Яндекс Метрика и Google Charts
Спасибо, что ответили. Вставляю действующие переменные, результат пустая страница.пример кода с переменными такой

function curl_file_get_contents($url)
{
    $authToken = '****************************';
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: application/x-yametrika+json', 'Authorization: OAuth' . $authToken]);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    $obj = curl_exec($ch);
    curl_close($ch);
    return $obj;
}
$url = 'https://api-metrika.yandex.ru/stat/v1/data';
$params = array(
    'ids' => '********',
    'metrics' => 'ym:s:visits',
    'dimensions' => 'ym:s:externalRefererPathLevel1',
    'date1' => '7daysAgo',
    'date2' => 'yesterday'
);
$obj = curl_file_get_contents($url . '?' . http_build_query($params));
$obj = json_decode($obj, true);

for ($i = 0;$i < count($obj['data']);$i++)
{
    echo '[', "'", $obj['data'][$i]['dimensions'][0]['name'], "'", ', ', $obj['data'][$i]['metrics']['0'], '],';
}
	
print_r($obj);
Последнее редактирование: 6 мес. 3 нед. назад пользователем p.rishard. Причина: Удалены token и ids.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
6 мес. 3 нед. назад - 6 мес. 3 нед. назад #14 от serge
serge ответил в теме API Яндекс Метрика и Google Charts

anton12rus пишет: Спасибо, что ответили.


Совсем другое дело.
B)
Почему ж пустая страница-то? Пожалуйста, наслаждайтесь:
(ссылка удалена).

Ничего не менял в вашем коде, только предварил его тегом php.

А я смогу! - А поглядим! - А я упрямый!
Последнее редактирование: 6 мес. 3 нед. назад пользователем p.rishard. Причина: Удалена ссылка

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
6 мес. 3 нед. назад #15 от anton12rus
anton12rus ответил в теме API Яндекс Метрика и Google Charts
Вот ничего не понимаю. Вчера ровно тот же код с тем же токеном ничего не возвращал, сегодня все есть. В любом случае спасибо, извиняюсь за критику. Хорошего дня.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
6 мес. 3 нед. назад #16 от serge
serge ответил в теме API Яндекс Метрика и Google Charts

anton12rus пишет: Вот ничего не понимаю. Вчера ровно тот же код с тем же токеном ничего не возвращал, сегодня все есть.


API Метрики работает не всегда стабильно, наблюдаем такое с нашими скриптами довольно часто. Так что ничего необычного. Кэшируйте результат на случай, если приходит пустышка, показывайте его.

А я смогу! - А поглядим! - А я упрямый!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
1 мес. 1 нед. назад #17 от Aleksej
Aleksej ответил в теме API Яндекс Метрика и Google Charts
Рекомендация Дмитрия Громова, представителя Яндекса на Серче:

Добрый день! Удалось воспроизвести запрос из присланных вами данных - действительно, если появляется семплирование, то может прийти только 1 или 2 значения.

В данном случае можно дать 2 рекомендации:
1) Проверять параметр "sampled" результирующих данных. Это позволит понять было ли применено семплирование;
2) Добавлять в запрос URL параметр "accuracy=1". Этот параметр будет гарантировать, что данные будут рассчитываться без семплирования.


Описанная ситуация ("может прийти только 1 или 2 значения) действительно возможна, хотя и нечасто. Так что оптимально прислушаться.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Больше
1 мес. 1 нед. назад #18 от unior
unior ответил в теме API Яндекс Метрика и Google Charts

Добавлять в запрос URL параметр "accuracy=1". Этот параметр будет гарантировать, что данные будут рассчитываться без семплирования.


ну правильно, единичка (стринг) соответствует full, т.е. отключению семплирования:
yandex.ru/dev/metrika/doc/api2/api_v1/sampling-docpage/

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.