From c4142145e9a3ef771ef806c5546cfa037676c631 Mon Sep 17 00:00:00 2001 From: knoflook Date: Thu, 27 Jan 2022 17:52:26 +0100 Subject: [PATCH] fix: don't pull the same post twice --- lumbunglib/hashtag.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lumbunglib/hashtag.py b/lumbunglib/hashtag.py index 9613891..e64124b 100644 --- a/lumbunglib/hashtag.py +++ b/lumbunglib/hashtag.py @@ -103,6 +103,10 @@ def main(): if not os.path.exists(output_dir): os.mkdir(output_dir) + all_existing_posts = [] + for i in os.listdir(output_dir): + all_existing_posts += os.listdir(os.path.join(output_dir, i)) + for hashtag in hashtags: hashtag_dir = os.path.join(output_dir, hashtag) @@ -122,12 +126,13 @@ def main(): post_dir = os.path.join(hashtag_dir, str(post_metadata["id"])) # if there is a post in the feed we dont already have locally, make it - if str(post_metadata["id"]) not in existing_posts: + if str(post_metadata["id"]) not in all_existing_posts: if not post_metadata[ "local_only" ]: # if you get an error here then you are using vanilla Mastodon, this is a Hometown or Glitch only feature create_post(post_dir, post_metadata) + all_existing_posts.append(post_metadata["id"]) else: print("not pulling post %s (post is local only)" % (post_metadata["id"]))