Этот проект предоставляет набор сценариев и инструментов для преобразования файлов XML в формат JSON. Он предназначен для работы с различными источниками данных XML и полностью настраивается, поддерживая несколько модулей преобразования. Проект разделен на отдельные модули Python для обработки различных видов данных, включая документы, лиц и архивы.
Решение включает в себя:
convert/
archiveLinkConvert.py # Handles conversion of archive link XMLs
artworkConvert.py # Handles artwork XML data
commonConvert.py # Contains common conversion utilities
personConvert.py # Handles conversion of person-related XMLs
docs/
pictures/ # Picture documentation related to the project
Analyza_SP.md # Analysis related documentation
documentaria_rudolphina.md # Project-specific documentation
model/
ArchiveLink.py # Data model for archive links
Document.py # Data model for documents
Person.py # Data model for person records
scripts/
main_convert.py # Main script to execute conversion
.gitignore # Git ignore configuration
README.md # This documentation file Чтобы использовать этот инструмент, вам понадобится установлен Python и PIP.
Затем запустите следующую команду:
pip install -r requirements.txt Это установит необходимые библиотеки для запуска сценария. Затем просто запустите сценарий main_convert.py с соответствующими параметрами. Вот основные команды для запуска программы из каталога XMLtoJSON :
Отображать информацию о справке:
python3 scripts/main_convert.py --helpили
python3 scripts/main_convert.py --hКонвертировать все типы файлов XML:
python3 scripts/main_convert.py --type all --input_path " path_for_input_data " --output_path " path_for_output_data "Конвертировать файлы XML, связанные с именем:
python3 scripts/main_convert.py --type names --input_path " path_for_input_data " --output_path " path_for_output_data "Преобразовать файлы XML, связанные с регистрацией:
python3 scripts/main_convert.py --type registers --input_path " path_for_input_data " --output_path " path_for_output_data "Преобразовать файлы XML, связанные с архивом:
python3 scripts/main_convert.py --type archive --input_path " path_for_input_data " --output_path " path_for_output_data "Папка входных данных должна быть структурирована следующим образом:
input_data/
Archiv/ # Archive-related XML files
Regesten/ # Register-related XML files
Namen/ # Name-related XML files
Indicies/ # Index-related XML files git clone https://github.com/VandlJ.git
cd XMLtoJSONЧтобы начать преобразование, используйте основной сценарий преобразования. Например, для преобразования всех файлов XML:
python3 scripts/main_convert.py --type all --input_path " ../test_data " --output_path " ../test_data/output "Вы также можете проверить все доступные варианты и получить подробную информацию, работая:
python3 scripts/main_convert.py --help Эта команда начнет обработку файлов XML в указанном каталоге --input_path и выведет результаты в каталог --output_path .
Этот проект был унаследован от другой команды, и мы сделали несколько значительных улучшений и исправлений для повышения его функциональности и надежности:
Обработка ошибок: пробелы/пустые символы для вмешательства в тексте - в файлах Regesten
display : Это поле используется для отображения текста на фронте, обеспечивая сохраняет исходное форматирование для читаемости.processable : это поле содержит более чистую версию текста, оптимизированная для компьютерной обработки и анализа.Обработка метаданных: проблемы метаданных в регест
.p в файлах Regesten. Некоторые элементы отсутствовали или неправильно захвачены. Мы провели тщательный обзор и гарантировали, что все элементы метаданных теперь точно захвачены и обработаны в нашей итерации программы. Улучшенная интерактивность: добавьте информацию onmouseover="highlightWords(event, '...')" в Regesten
onmouseover был добавлен, чтобы выделить слова, когда они завис. Обработанные данные теперь включают в себя: "names" : [
{
"Aichholz_Johann" : " Johann Aichholz " ,
"alias" : " Johann Aichholz Ehrzney doctor "
},
{
"Strauben_Franz" : " Franz Strauben " ,
"alias" : " Frannzen Strauben "
}
]Обработка имени: разделение имени и фамилия через внешний инструмент - Gettyulan
Единый основной сценарий для преобразования
--type , --input_path и --output_path . Это изменение упрощает выполнение и повышает гибкость процесса конверсии.Улучшенная документация и инструкции по настройке
Улучшения производительности и исправления ошибок
Исправление в выходе JSON Type Archiv
hasSublink , linkTo и next_link в результатах файлов json для типа архив. Это гарантирует, что эти переменные точно представлены и связаны на выходе JSON.Эти улучшения значительно улучшили функциональность, удобство использования и надежность проекта XML в JSON Converter, что делает его более надежным и удобным для пользователя.