как обрабатывать вывод из запросов api python-gitlab
Например , вызов gl = gitlab.Gitlab('http://192.168.2.175', private_token=run_args['my_token'])
projects = gl.projects.list()
for project in projects:
print(project)
производит вывод, который нельзя обработать как json. Каков процесс анализа этой информации, или я должен просто использовать стандартные запросы на отдых и отказаться от python-gitlab?
4 ответа
Я считаю, что вам нужно больше устранять неполадки. Я протестировал следующую настройку, которая похожа на вашу, и gl.projects.list() возвращает список проектов в формате json.
gl = gitlab.Gitlab('https://gitlab.com/', ACCESS_TOKEN)
def get_projects():
projects = gl.projects.list(owned=True)
for project in projects:
print(project.name)
(python-gitlab использует запросы "под капотом" https://github.com/python-gitlab/python-gitlab#requirements)
С
python-gitlab
работает под капотом с
requests
вы можете просто включить для него журналы отладки, описанные в другом вопросе здесь
Просто отвечаю на этот довольно старый вопрос, потому что сегодня у меня была такая же проблема :)
Вот ответ, который я искал. Результатом является словарь классов: projects = gl.projects.list(search='autobuild') для проекта в проектах: для элемента в проекте.dict['_attrs']: распечатать элемент
Это создает список переменных, относящихся к проекту.
Другой подход - преобразовать объект проекта в словарь.
gl = gitlab.Gitlab('https://gitlab.com/', ACCESS_TOKEN)
def get_projects():
projects = gl.projects.list(owned=True)
for project in projects:
project = project.attributes
print(project["name"])