summaryrefslogtreecommitdiff
path: root/loadarticle.py
diff options
context:
space:
mode:
authorJacob McDonnell <jacob@simplelittledream.com>2023-05-03 13:13:47 -0400
committerJacob McDonnell <jacob@simplelittledream.com>2023-05-03 13:13:47 -0400
commit97a8370caea2fae4a0a67165036aae2dc2d05900 (patch)
treeeb3c80ce24a66d342e3ba4143e88d6893a5f49b2 /loadarticle.py
parent79352a7fe3a64021b8c39db2a78a22cdd58abb1e (diff)
Rewrite of the website in Flask
Diffstat (limited to 'loadarticle.py')
-rwxr-xr-xloadarticle.py34
1 files changed, 34 insertions, 0 deletions
diff --git a/loadarticle.py b/loadarticle.py
new file mode 100755
index 0000000..451ddd6
--- /dev/null
+++ b/loadarticle.py
@@ -0,0 +1,34 @@
+import db
+import sys
+import datetime
+
+path = input("Enter path to db entry backup: ")
+sys.path.append(path)
+import dbbak
+
+r = db.DB()
+r.add_article(dbbak.db_entry)
+print(r.get_all_keys())
+print(r.get_article(dbbak.db_entry['url']))
+
+def gen_item(article):
+ date = article["date"].split("/")
+ date = datetime.date(int(date[2]), int(date[0]), int(date[1]))
+ item = [ '<item>', f'<title>{article["title"]}</title>', f'<guid>https://jacobmcdonnell.com/articles/article["url"]/</guid>', f'<link>https://jacobmcdonnell.com/articles/article["url"]/</link>', f'<pubDate>{date.strftime("%d %b %Y")} 00:00:00 -0500</pubDate>', '<description><![CDATA[', article["desc"],']]></description>', '</item>' ]
+ return "\n".join(item)
+
+def gen_rss():
+ rss = ['<?xml version="1.0" encoding="utf-8"?>', '<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">', '<channel>', '<title>Jacob McDonnell</title>', '<description>Articles from Jacob McDonnell.</description>', '<language>en-us</language>', '<link>https://jacobmcdonnell.com/rss.xml</link>', '<atom:link href="https://jacobmcdonnell.com/rss.xml" rel="self" type="application/rss+xml" />', '<image>', '<title>Jacob McDonnell</title>', '<url>https://jacobmcdonnell.com/favicon.ico</url>', '<link>https://jacobmcdonnell.com/rss.xml</link>', '</image>' ]
+ articles = sorted(r.get_all_articles(), reverse=True, key=lambda d: d['id'])
+ for article in articles:
+ rss.append(gen_item(article))
+ rss.append("</channel></rss>")
+ rss = "\n".join(rss)
+ file = open("static/rss.xml", "w")
+ file.write(rss)
+ file.close()
+
+rss = input("Do you want to generate a new rss file? [y or n]: ")
+if rss == 'y':
+ gen_rss()
+