From 064e0fd8c82b8e34f27090e5a77ac55940a283c5 Mon Sep 17 00:00:00 2001 From: nathansmith117 Date: Sat, 29 Mar 2025 05:52:09 -0600 Subject: Working on blog --- blog/generate.py | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) (limited to 'blog/generate.py') diff --git a/blog/generate.py b/blog/generate.py index 3471ef9..09c2320 100755 --- a/blog/generate.py +++ b/blog/generate.py @@ -6,6 +6,24 @@ A script to generate html from the rss feed import xml.etree.ElementTree as et +# Generates a html table for the article +# I use table layout because fuck you +def make_article_table(article_info, article): + html_text = """ + + + +

{title}

--- {date}
{article}
+ """ + + html_text = html_text.format( + title=article_info["title"], + date=article_info["pubDate"], + article=article + ) + + return html_text + def main(): tree = et.parse("feed.xml") root = tree.getroot() @@ -17,14 +35,25 @@ def main(): with open("template.html", "r") as fp: template = fp.read() + article_html = "" + # Get articles from rss for item in channel.findall("item"): + article_info = { + "title": item.find("title").text, + "pubDate": item.find("pubDate").text + } + article = item.find("description").text # Remove article tags. article = article[article.find("
")+9::] article = article[:article.find("
"):] - print(article) + article_html += make_article_table(article_info, article) + + # Format the articles into the html + template = template.format(articles=article_html) + print(template) if __name__ == "__main__": main() -- cgit v1.2.3