#! /usr/bin/python3 """ 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() channel = root[0] template = "" # Open html template 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("
"):] 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()