|
@@ -0,0 +1,44 @@
|
|
|
|
+from lxml import etree
|
|
|
|
+import urllib.request
|
|
|
|
+
|
|
|
|
+URL = "https://finetuned.nl/freshrss/p/i/?a=rss&rid=610659e817a51&hours=168"
|
|
|
|
+FILE = open("rss.html", "w")
|
|
|
|
+
|
|
|
|
+print("<html>", file=FILE)
|
|
|
|
+print("<head>", file=FILE)
|
|
|
|
+print("<meta charset=\"UTF-8\">", file=FILE)
|
|
|
|
+print("<title>RSS Feed</title>", file=FILE)
|
|
|
|
+print("<style>", file=FILE)
|
|
|
|
+print("* { font-family: sans-serif; line-height: 1.6em;}", file=FILE)
|
|
|
|
+print("a:link { color: black }", file=FILE)
|
|
|
|
+print("a:visited { color: #888 }", file=FILE)
|
|
|
|
+print("</style>", file=FILE)
|
|
|
|
+print("</head>", file=FILE)
|
|
|
|
+print("<bady>", file=FILE)
|
|
|
|
+print("<h1>RSS Feed</h1>", file=FILE)
|
|
|
|
+print("<ul>", file=FILE)
|
|
|
|
+
|
|
|
|
+feed = urllib.request.urlopen("https://finetuned.nl/freshrss/p/i/?a=rss&rid=610659e817a51&hours=168")
|
|
|
|
+feed = etree.parse(feed)
|
|
|
|
+feed = feed.getroot()
|
|
|
|
+channel = feed.find("channel")
|
|
|
|
+for item in channel.iterfind("item"):
|
|
|
|
+ title = item.find("title").text
|
|
|
|
+ guid = item.find("guid").text
|
|
|
|
+ contents = item.find("description").text
|
|
|
|
+ print(f"<li><a href=\"articles/{guid}.html\">{title}</a></li>", file=FILE)
|
|
|
|
+ with open(f"articles/{guid}.html", "w") as file:
|
|
|
|
+ print("<html>", file=file)
|
|
|
|
+ print("<head>", file=file)
|
|
|
|
+ print("<meta charset=\"UTF-8\">", file=file)
|
|
|
|
+ print("<title>RSS Feed</title>", file=file)
|
|
|
|
+ print("</head>", file=file)
|
|
|
|
+ print("<bady>", file=file)
|
|
|
|
+ print(contents, file=file)
|
|
|
|
+ print("</body>", file=file)
|
|
|
|
+ print("</html>", file=file)
|
|
|
|
+
|
|
|
|
+print("</ul>", file=FILE)
|
|
|
|
+print("</body>", file=FILE)
|
|
|
|
+print("</html>", file=FILE)
|
|
|
|
+FILE.close()
|