Explorar o código

Initial version

Stan Jansen %!s(int64=3) %!d(string=hai) anos
achega
43b2689c2e
Modificáronse 2 ficheiros con 50 adicións e 0 borrados
  1. 44 0
      kindlerss.py
  2. 6 0
      setup.py

+ 44 - 0
kindlerss.py

@@ -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()

+ 6 - 0
setup.py

@@ -0,0 +1,6 @@
+from setuptools import setup
+
+setup(name="kindlerss",
+      descirption="Turn an RSS feed into a kindle-readable web page",
+      py_modules = ['kindlerss'],
+      install_requires=["lxml"])