From d892b1c0b5a769ada9929907399dfde6a04d71c5 Mon Sep 17 00:00:00 2001 From: neodarz Date: Sun, 29 Sep 2019 17:05:36 +0200 Subject: Add function to get an article --- db.py | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'db.py') diff --git a/db.py b/db.py index b0895f5..52df438 100644 --- a/db.py +++ b/db.py @@ -64,3 +64,26 @@ def import_bookmarks(bookmarks_file="bookmarks.html", force=False): else: logging.warning("File {} already exist!".format(final_file)) + +title = re.compile(r'^title: (.*)$') +published = re.compile(r'^published: (.*)$') +updated = re.compile(r'^updated: (.*)$') +link = re.compile(r'^link: (.*)$') +tags = re.compile(r'^tags: (.*)$') +archive = re.compile(r'^archive: (.*)$') +private = re.compile(r'^private: (.*)$') +comment = re.compile(r'---[\s\S]*?---[\s\S]([\s\S]*)',) +def bookmark(path): + bookmark = {} + with open(path, 'r', encoding="utf-8") as f: + lines = f.readlines() + bookmark["path"] = path + bookmark["title"] = [m.group(1) for l in lines for m in [title.search(l)] if m][0] + bookmark["published"] = [m.group(1) for l in lines for m in [published.search(l)] if m][0] + bookmark["updated"] = [m.group(1) for l in lines for m in [updated.search(l)] if m][0] + bookmark["link"] = [m.group(1) for l in lines for m in [link.search(l)] if m][0] + bookmark["tags"] = [m.group(1) for l in lines for m in [tags.search(l)] if m][0] + bookmark["archive"] = [m.group(1) for l in lines for m in [archive.search(l)] if m][0] + bookmark["private"] = [m.group(1) for l in lines for m in [private.search(l)] if m][0] + bookmark["comment"] = [m.group(1) for m in [comment.search("".join(lines))] if m][0] + return bookmark -- cgit v1.2.1