我正在尝试扫描特定的subreddit,以查看评论在热门提交中出现的次数。
我无法得到任何迹象表明它实际上正在阅读该消息,因为它根本不会打印消息的正文。 注意:的 sr = subreddit 短语=正在寻找的短语
我还是praw和python的新手(仅在最后一小时才拿到它)但我在c中有相当多的经验。
任何帮助都将不胜感激。
submissions = r.get_subreddit(sr).get_top(limit=1)
for submission in submissions:
comments = praw.helpers.flatten_tree(submission.replace_more_comments(limit=None, threshold=0))
for comment in comments:
print(comment.body.lower())
if comment.id not in already_done:
if phrase in comment.body.lower():
phrase_counter = phrase_counter + 1
答案 0 :(得分:0)
Submission.replace_more_comments
返回 NOT 替换的MoreComment
个对象的列表。因此,如果您使用limit=None
和threshold=0
进行调用,则会返回一个空列表。请参阅replace_more_comments
docstring。以下是如何同时使用replace_more_comments
和flatten_tree
的完整示例。有关详细信息,请参阅文档中的comment parsing页面。
import praw
r = praw.Reddit(UNIQUE_AND_DESCRIPTIVE_USERAGENT_CONTAINING_YOUR_REDDIT_USERNAME)
subreddit = r.get_subreddit('python')
submissions = subreddit.get_top(limit=1)
for submission in submissions:
submission.replace_more_comments(limit=None, threshold=0)
flat_comments = praw.helpers.flatten_tree(submission.comments)
for comment in flat_comments:
print(comment.body)