Ich mache einen reddit Bot und ich habe es die Kommentar-IDs in einem Array gespeichert, so dass es nicht zweimal auf den gleichen Kommentar antwortet, aber wenn ich das Programm schließe Array ist gelöscht.Python lädt Variablen in ein Array aus der Datei
Ich bin auf der Suche nach einer Möglichkeit, das Array zu halten, wie es in einer externen Datei speichern und lesen, danke!
Hier ist mein Code:
import praw
import time
import random
import pickle
#logging into the Reddit API
r = praw.Reddit(user_agent="Random Number machine by /u/---")
print("Logging in...")
r.login(---,---, disable_warning=True)
print("Logged in.")
wordsToMatch = ["+randomnumber","+random number","+ randomnumber","+ random number"] #Words which the bot looks for.
cache = [] #If a comment ID is stored here, the bot will not reply back to the same post.
def run_bot():
print("Start of new loop.")
subreddit = r.get_subreddit(---) #Decides which sub-reddit to search for comments.
comments = subreddit.get_comments(limit=100) #Grabbing comments...
print(cache)
for comment in comments:
comment_text = comment.body.lower() #Stores the comment in a variable and lowers it.
isMatch = any(string in comment_text for string in wordsToMatch) #If the bot matches a comment with the wordsToMatch array.
if comment.id not in cache and isMatch: #If a comment is found and the ID isn't in the cache.
print("Comment found: {}".format(comment.id)) #Prints the following line to console, develepors see this only.
#comment.reply("Hey, I'm working!")
#cache.append(comment.id)
while True:
run_bot()
time.sleep(5)
schreibe die Liste in eine Datei mit 'json.dumps' – Keatinge