Мне нужно экспортировать все задачи Asana из определенных проектов моей рабочей области в файл CSV. Я делал это вручную с помощью расширенного поиска Asana, но созданный Asana CSV-файл поддерживает только <2000 записей, которые больше не соответствуют моим потребностям. Следующий код (который я нашел в Интернете и слегка адаптированный) почти делает то, что я хочу, за исключением того, что мне нужен дополнительный столбец «Теги» (как в сгенерированном ASAN-файле csv), отображающий разделенный запятыми список тегов каждой задачи. Мне нужны имена тегов, а не идентификаторы тегов. У меня есть базовые знания Python, но у меня нет опыта работы с API, так что это действительно выходит за рамки моих возможностей. Буду очень признателен, если кто-нибудь сможет помочь. Вот соответствующий бит кода: </p>
import sys
import csv
import asana
def process_project_tasks(client, project, ws_dict):
"""Add each task for the current project to the records list."""
task_list = []
while True:
tasks = client.tasks.find_by_project(project['id']
{"opt_fields":"name, projects, workspace, id, due_on, created_at,
modified_at, completed, completed_at, assignee, assignee_status, parent,
notes"})
for task in tasks:
ws_name = ws_dict[task['workspace']['id']]
assignee = task['assignee']['id'] if task['assignee'] is not
None else ''
created_at = task['created_at'][0:10] + ' ' +
task['created_at'][11:16] if \
task['created_at'] is not None else None
modified_at = task['modified_at'][0:10] + ' ' +
task['modified_at'][11:16] if \
task['modified_at'] is not None else None
completed_at = task['completed_at'][0:10] + ' ' +
task['completed_at'][11:16] if \
task['completed_at'] is not None else None
rec = [task['name'], project['name'], ws_name,task['due_on'],
created_at, \
modified_at, task['completed'], completed_at, assignee, \
task['assignee_status'], task['parent'], task['notes'],
task['id']]
rec = ['' if s is None else s for s in rec]
task_list.append(rec)
if 'next_page' not in tasks:
break
return task_list