Сбор всех комментариев из проекта
Сбор всех комментариев из проекта
Обзор
Инструмент извлечения комментариев получает все ресурсы в проекте, извлекает комментарии и выводит их в файл CSV. В этом пошаговом руководстве используются следующие ресурсы:
- Python SDK — SDK выполняет разбивку на страницы за вас и настраивает клиент, который можно использовать с токенами разработчика (аутентификация Bearer).
- Инструмент извлечения комментариев на Python — пример кода, который мы используем, находится здесь.
Попробуйте на Glitch
Glitch — это простой инструмент, который позволяет настраивать собственные приложения, тестировать и запускать их на их серверах. Если вы еще не работали с Glitch, ознакомьтесь с нашим руководством по использованию Glitch. Если хотите увидеть, как работает инструмент извлечения комментариев на сервере, мы настроили приложение Flask на Glitch: инструмент извлечения комментариев Frame.io на Python.
Необходимые области доступа
Перед началом работы с этим руководством убедитесь, что у вас есть токен, который включает как минимум следующие области доступа:
1. Подготовка приложения
Это руководство будет следовать такой же схеме, как чтение дерева файлов. Соответственно, для начала работы вам потребуется:
root_asset_idпроекта, который вы сканируете;- токен разработчика.
Также нужно импортировать FrameioClient в ваше приложение Python и некоторые дополнительные вспомогательные библиотеки:
2. Сканирование проекта
Теперь нужно рекурсивно получить все ресурсы, проверить их на наличие комментариев и сохранить любые ресурсы с комментариями в списке, из которого можно создать файл .csv.
При сканировании проекта нужно выполнить следующие проверки для каждого ресурса:
-
Является ли ресурс файлом? (
"_type": "file"). -
Если это файл, есть ли у него комментарии? * Если есть, получите их и добавьте в ваш список.
-
Является ли ресурс папкой? (
"_type": "folder") -
Если это папка, выполните рекурсивную обработку ее дочерних элементов.
-
Является ли ресурс стеком версий? (
"_type": "version_stack") -
Если это стек версий, получите все дочерние элементы и проверьте их на наличие комментариев.
Не забудьте о разбивке на страницы
Приведенный выше пример игнорирует разбивку на страницы — но при навигации по большим коллекциям этим не следует пренебрегать! См. наше руководство Основные концепции для справки.
3. Приведение списка комментариев к плоскому виду
Если вы не сделали этого во время сканирования, нужно будет привести список к плоскому виду для более легкой обработки.
4. Отбраковка списка и создание файла .csv
Когда список приведен к плоскому виду, можно использовать генератор списков для извлечения полезных для вас элементов из каждого комментария, а затем вывести их в файл .csv. Мы рекомендуем включить как минимум:
- Комментарий —
text - ИД родительского элемента —
parent_id - ИД ресурса —
asset_id - Имя ресурса —
имя - ИД владельца —
owner_id - Адрес электронной почты владельца —
owner.email - Метка времени —
timestamp - Время обновления —
updated_at
После создания нового списка с нужными данными для каждого ресурса и получением итогового результата, можно записывать данные в файл .csv.
Вот и все!Теперь у вас есть файл .csv с развернутыми комментариями из всего проекта Frame.io.