Как использовать Adobe Analytics API 2.0 внутри ноутбука Jupyther

Я хочу вызвать Adobe Analytics API 2.0 из своего ноутбука Jupyther. Мне не нужна «постоянная» аутентификация между сервером и Adobe (или подобным), я просто хочу получить некоторые (большие объемы) данных для анализа.

Я уже создал интеграцию ключа API, как описано здесь (https://www.adobe.io/authentication/auth-methods.html#!AdobeDocs/adobeio-auth/master/AuthenticationOverview/APIKeyIntegration.md).

Если я отправлю пример вызова, скажем:

r = requests.get("https://analytics.adobe.io/api/myID/dimensions?rsid=myreportsuite&locale=en_US&segmentable=true&reportable=true&classifiable=false")

Очевидно, я получаю следующий ответ:

'{"error_code":"403010","message":"Oauth token is missing."}\n'

Как я могу включить свой токен Oauth в свой запрос?

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
0
1 152
3

Ответы 3

вам нужно поместить их в headers, в частности, предоставив словарь в параметр headers функции get, как задокументировано здесь

url = 'https://api.github.com/some/endpoint'

my_api_key = 'thisismyapikey9393'
my_product_name = 'my_app_0.1'

headers = {
    'x-api-key' : my_api_key,
    'x-product' : my_product_name
}

r = requests.get(url, headers=headers)

Я взял название заголовка из Step 3: Try It в вашей ссылке Adobe.

curl 'https://stock.adobe.io/Rest/Media/1/Search/Files?locale=en_US%26search_parameters%5Bwords%5D=kittens ' -H 'x-api-key:myAPIKey' -H 'x-product:myTestApp1.0'

Спасибо за твой ответ! к сожалению, он не работает. Если я реализую это по-вашему, я получаю «токен Oauth отсутствует». Если я добавлю «Авторизация»: <my_client_secret> в свою полезную нагрузку, он скажет: «Токен Oauth недействителен». Я дважды проверил написание, это определенно не тип.

funkfux 28.03.2019 14:43

Вы реализовали/протестировали OAuth, используя этот пример?

user10417531 28.03.2019 15:03

Возможно, будет проще использовать библиотеку, которая уже имеет дело с такими вещами, как аутентификация. Я пришел к python-adobe-analytics-2.0, но сам не использовал его. Наверное, стоит заглянуть хотя бы просто для того, чтобы посмотреть на код и адаптировать его под свои нужды. Вы можете найти дополнительную информацию и документацию по этому пакету на этот сайт. (к сожалению, репозиторий на github не очень информативен)

Если вы не хотите использовать этот пакет, на веб-сайте также есть руководство по использованию аутентификации JSON Web-Token (JWT) с Adobe 2.0. Найдите его здесь.

Я экспериментировал с этим и создал пакет, чтобы иметь возможность создавать запросы, включающие несколько измерений/показателей. Подробнее: https://analyticsmayhem.com/adobe-analytics/reports-v2-api-python/

Однако для выполнения запросов вам все равно потребуется создать учетную запись службы для аутентификации (https://www.adobe.io/authentication/auth-methods.html#!AdobeDocs/adobeio-auth/master/JWT/JWT.md).

Дайте мне знать о любых комментариях / отзывах о пакете.

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

Hoppeduppeanut 08.07.2020 00:48

Другие вопросы по теме