Инструмент для обработки Obsidian-хранилищ с иерархическим разделением документов.
- Загрузка документов из Obsidian vault с сохранением метаданных
- Иерархическое разбиение текста по заголовкам (H1-H6) в древовидную структуру
- Фильтрация по папкам - загрузка только нужных директорий
- Анализ вики-ссылок - извлечение всех типов Obsidian-ссылок
- Экспорт в JSON - структурированное сохранение результатов
Для установки зависимостей:
pip install -r requirements.txtpython parse.py --path "D:/Obsidian/vault" -o "data.json"Файл JSON содержит документы в формате:
[
{
"name": "filename.md",
"path": "путь/к/файлу.md",
"tags": ["tag1", "tag2"],
"chunks": [
{
"data": "текст фрагмента",
"links": [...]
}
],
"children": [
{
"title": "Заголовок",
"level": 1,
"chunks": [...],
"children": [...]
// иерархичная структура
}
]
}
]chunks- текстовые фрагменты без заголовковchildren- иерархическая структура блоков с заголовкамиlinks- извлеченные Obsidian-ссылки с их атрибутами
Гибкая фильтрация документов по путям:
include_paths=["/Notes", "/Projects"] # Загружать только из этих папок
exclude_paths=["/Notes/Archive", "/Projects/Templates"] # Исключить подпапкиТаким образом можно:
- Загружать документы из папки
/Notes, но исключить её подпапку/Notes/Archive - Включать всю папку
/Projects, кроме шаблонов в/Projects/Templates - Комбинировать включение и исключение для точного контроля загружаемых документов
Пути указываются относительно корневой директории vault.