4Manuals

  • PDF Cloud HOME

PRAW:当Reddit用户的提交总数大于1000时,如何获取? Download

    如何将文本边界框与pyplot.Rectangle对齐? 导入类问题 在Python数据框中选择列时出错 使用Rabbit的pika确认消息 如何在按住键的同时暂停VideoStream? Python OpenCV 将我的代码从多处理更改为普通 TypeError:无法处理此数据类型 使用buildozer不会下载sdl2_image 如何从作为请求传递的输入类型数据绑定中提取数据 SMTPSenderRefused,421,超出超时

我正在尝试获取Reddit用户的提交总数,但Reddit API仅限显示1000条帖子。

因此,以下代码不适用于提交一千个以上的用户:

import praw

reddit = praw.Reddit(client_id='CLIENT_ID',
                     client_secret='SECRET_KEY',
                     user_agent='USER_AGENT',
                     username='USERNAME',
                     password='PASSWORD')

counter = 0
submissions = reddit.redditor('REDDIT_USERNAME').submissions.new(limit=None)

for submission in submissions:
    counter += 1

print(counter)

同样,我尝试做print(len(submissions)),但是得到以下信息:

TypeError: object of type 'ListingGenerator' has no len()

如果用户帖子数超过1000,是否可以获取用户的提交总数?

谢谢!

1 个答案:

答案 0 :(得分:0)

有几种方法中的一种,有些比其他的更完美。

您可以在所有时间段(天,周,月,年,全部)中访问每种排序方式(例如按热门,新的,热门的排序方式)。根据用户的活动,这可能就足够了。您可以使用Pushshift API获取公开提交的内容。

我在comment I made on the redditdev subreddit中解释:

  

是的。一般来说,您可以获得列表中的最后1000个项目   (/ r / all和/ r / popular列表较高),无论多长时间   

     

获得超过1000个物品:

     

[...]

     

如果这是一个公开的subreddit,请考虑也使用pushshift.io



Similar searches
    当样品ID位于两列中时,删除重复的观察值 如何在Angular中指定子项目的资产路径? 使用Firestore在Swift中完成处理程序的替代方法 Java程序找到最小数量 熊猫如何获得基于另一列的百分比?