Я использую Jupyter Notebook, чтобы собрать кучу вызовов API, а затем использую различные инструменты построения графиков для создания симпатичных графиков.
У меня отлично работает ноутбук, когда я использую константы в полезной нагрузке API.Теперь я пытаюсь заменить константы введенными пользователем переменными и у меня возникают некоторые проблемы.
Следующий метод использования переменных работает, когда переменная не является частью фильтра или функции:
key = input('Enter your subscription API Key then press Enter: ')
При появлении запроса пользователь вводит ключ, и это значение отлично используется в следующих случаях:
headers = {
'X-Co-Integration-Key': key,
'Content-Type': "application/json",
'Cache-Control': "no-cache",
}
Далее введите другую переменную для руководства, называемого guideId:
guideId = input('Enter the Guide ID of the guide for which you want statistics then press Enter: ')
При появлении запроса пользователь вводит guideId, и это значение сохраняется, но я не могу заставить его должным образом использоваться в полезной нагрузке API.
Я пробовал несколько различных способов вставки переменной, и следующее дает мне наиболее близкое представление о том, что работает:
{\n \"filter\": \"id== \"" + guideId + "\n }
Вызов API выполняется, но я получаю следующую ошибку:
{"overall": {"DeserializationError": "invalid character 'q' after object key:value pair"}, "fields": {"pipeline": "Required"}}
Похоже, что он читает переменную и останавливается после того, как она попадает в первый символ переменной, который в данном случае равен q
.
Я попытался изменить переменную, чтобы она начиналась с цифры.Без изменений в поведении.
Я пытался использовать str(guideId)
- без изменений в поведении.
Я в тупике.Есть идеи?