Запустите пользовательский скрипт перед генерацией статического HTML с помощью Pelican

1

Я использую Pelican для создания статического веб-сайта. Я хочу запустить пользовательский скрипт Python во время процесса сборки до того, как содержимое веб-сайта будет сгенерировано в output папке. Этот сценарий в первую очередь выполняет некоторую замену текста с помощью синтаксического анализа регулярных выражений. Может ли кто-нибудь просветить меня, как это может быть достигнуто (если вообще)?

Теги:
pelican

2 ответа

0

Мне нужно было выполнить то же самое, что вам нужно. Мне нужно было обновить URL-адреса некоторых тегов <img> прежде чем нажимать на страницы Gitlab. Единственное, что я мог найти, это просто добавить команду к любому используемому варианту развертывания (Fabric, make и т.д.). Например, я использую make для "развертывания" моего сайта (вывод кода в отдельный каталог/репо, который затем перенаправляется в Gitlab). Поэтому в Makefile я добавлен в строку publish следующим образом:

publish:
        $(PELICAN) $(INPUTDIR) -o $(OUTPUTDIR) -s $(PUBLISHCONF) $(PELICANOPTS) && find $(OUTPUTDIR)/* -type f -name '*.html' -exec sed -i '' 's/stuff to replace/replacement text/g' {} +

Я довольно не осведомлен о том, как использовать make, поэтому, возможно, лучший способ форматировать это в Makefile, но он работает для меня.

0

Это похоже на задачу, наиболее подходящую для плагина Pelican. Первое, что я хотел бы сделать, это посмотреть репозиторий плагинов Pelican и посмотреть, есть ли существующий плагин, который может доставить нужные вам функции. Если нет, вы можете подумать о том, чтобы найти плагин, который достаточно близко и модифицировать его для достижения желаемого результата. Документация для плагинов Pelican достаточно обширна, и если у вас возникают проблемы, вы, скорее всего, будете обращаться за помощью к людям в канале IRC Пеликан,

Ещё вопросы

Сообщество Overcoder
Наверх
Меню