无法用praw解析评论

时间:2014-03-05 23:33:51

标签: python comments counter reddit praw

我正在尝试扫描特定的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

1 个答案:

答案 0 :(得分:0)

Submission.replace_more_comments返回 NOT 替换的MoreComment个对象的列表。因此,如果您使用limit=Nonethreshold=0进行调用,则会返回一个空列表。请参阅replace_more_comments docstring。以下是如何同时使用replace_more_commentsflatten_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)