В рубрике полезных инструментов работы с данными, я выложил в открытый доступ очередную маленькую утилиту filegetter [1] для проектов цифрового архива (ruarxive.org, телеграм канал @ruarxive).
Утилита делалась когда-то для тех случаях когда в файле набора данных есть ссылки на какие-то файлы, например, PDF/DOC документы или изображения или ещё что-то что надо собрать вместе с набором данных. Такие файлы можно собирать разными способами, например, набором скриптов для командной строки или из скрипта на любом скриптовом языке. Но в какой-то момент это стало довольно неудобно каждый раз писать программу на на сто строк кода, когда можно было бы описать правила в 5 строках конфигурационного файла.
Поэтому на базе другой утилиты, apibackuper [2], созданной для архивации данных в API была быстро сделана эта утилита которая так и пролежала почти год пока у меня не нашлось немного времени сделать к ней документацию и примеры.
Так вот примеры:
- выгрузка файлов приложенных к проекту бюджета с сайта Госдумы [3]
- выгрузка отчетов политических партий с сайта ЦИК РФ [4]
- выгрузка изображений из каталога музейного фонда [5]
Всё это довольно простые примеры, когда файлы выкачиваются из первоисточников и складываются внутрь ZIP контейнера, а рядом сохраняется файл с метаданными.
Главное применение - архивация сопутствующих файлов привязанных к наборам данных.
В итоге, рано или поздно, хочется это упаковать в связанные между собой инструменты для цифровой архивации. Их по отдельности уже много: архивация Wordpress, API, файлов, веб-сайтов, телеграм и других цифровых объектов и типов источников данных и контента.
Ссылки:
[1] https://github.com/ruarxive/filegetter
[2] https://github.com/ruarxive/apibackuper
[3] github.com/ruarxiv…dget2023
[4] github.com/ruarxiv…tparties
[5] github.com/ruarxiv…skatalog
#opendata #digitalpreservation #webarchives #opensource
A command-line tool to collect files from public data sources using URL patterns and config files - GitHub - ruarxive/filegetter: A command-line tool to collect files from public data sources using...