#!/usr/bin/env python3 import csv import panflute as pf def action(elem, doc): pass def finalize(doc): keys = [ "git_date", "git_initial_date", "title", "subject", "path", "base_url", "blog_entries_list", ] rss_data = {} for k in keys: rss_data[k] = doc.get_metadata(k, "") blog_entries_list = rss_data["blog_entries_list"] path = rss_data["base_url"] + rss_data["path"] rss_data["path"] = path del rss_data["blog_entries_list"] del rss_data["base_url"] with open(blog_entries_list, "a") as file: writer = csv.DictWriter(file, fieldnames=keys[:-2]) writer.writerow(rss_data) def main(doc=None): return pf.run_filter(action, finalize=finalize, doc=doc) if __name__ == "__main__": main()