Инструменты архивации Discourse

Мне нужен был способ архивирования моего форума Discourse на GitHub, но я обнаружил, что многие доступные скрипты устарели или не работают. Поэтому я решил создать простые скрипты, которые соответствуют моим требованиям. Хотя они не идеальны и имеют несколько незначительных проблем, они отвечают моим текущим потребностям, так как у меня нет больше времени на этот проект.

https://github.com/c0mmando/discourse-to-markdown-archiver

  • Архивирование новых постов в формате JSON.
  • Конвертация тем в файлы Markdown.
  • Поддержка одновременной работы с несколькими сайтами Discourse (по одному сайту за раз).
  • Отдельный учёт метаданных для каждого сайта (дата последней синхронизации и ID архивированных постов).
  • Параллельная обработка тем с использованием пула потоков для повышения производительности.
  • Экспоненциальная задержка при HTTP-запросах для обработки ограничений скорости или временных ошибок.

https://github.com/c0mmando/discourse-to-github-archiver

  • Архивирование постов: Сохранение каждого поста Discourse в отдельный JSON-файл, организованный по дате создания.
  • Параллельная обработка: Одновременная конвертация тем, преобразование постов из HTML в Markdown.
  • Скачивание изображений: Обработка HTML для загрузки изображений и замена ссылок на изображения относительными путями.
  • Обновление метаданных: Отслеживание архивированных постов для избежания дубликатов.
  • Инкрементальное обновление README: Обновление файла README.md с оглавлением для удобства навигации.

Вот пример архивированного форума на GitHub:
https[://]github[.]com/c0mmando/forum.hackliberty.org

В вашем примере ссылки есть лишние квадратные скобки «[». Я убрал их для ссылки ниже.

https://github.com/c0mmando/forum.hackliberty.org