4

我正在尝试从 subreddit 中删除所有评论。我找到了一个名为 PRAW 的库。它举了一个例子

import praw
r = praw.Reddit('Comment parser example by u/_Daimon_')
subreddit = r.get_subreddit("python")
comments = subreddit.get_comments()

但是,这只返回最近的 25 条评论。如何解析 subreddit 中的所有评论?在 Reddit 界面上,有一个next按钮,所以应该可以逐页返回历史记录。

4

1 回答 1

2

文档

请参阅 UnauthenticatedReddit.get_comments() 了解完整用法。

该函数具有 *args 和 **kwargs,并且函数注释:

附加参数直接传递到 get_content()。注意:url 参数不能更改。

因此,我查看了该函数(在此处找到)。的论据之一get_contentlimit

limit – 要获取的内容条目数。如果限制 <= 0,则为您的帐户获取默认值(未经身份验证的用户为 25)。如果 limit 为 None,则获取尽可能多的条目(reddit 每个请求最多返回 100 个,但是,PRAW 会根据需要自动发出额外的请求)。

(强调补充)。所以我的测试是:

 comments=subreddit.get_comments(limit=None)

我收到了 30 多条评论(可能是 100 条限制,但我必须手动查看它们,所以我认为 30 条就足够了)。

于 2015-06-28T18:06:37.713 回答