慕妹3242003
此代码段发出两个请求。首先,当您在第 3 行访问时,它会从 Reddit API 加载提交的评论。然后,在同一行上,调用将只替换一个对象,这会发出额外的请求。sm.commentsreplace_more(1)MoreComments要确定某些 PRAW 代码发出的网络请求数,请查看日志记录文档中的部分。将该网页中的此代码段添加到脚本顶部:import logginghandler = logging.StreamHandler()handler.setLevel(logging.DEBUG)logger = logging.getLogger('prawcore')logger.setLevel(logging.DEBUG)logger.addHandler(handler)然后,在运行脚本时,你将看到描述所发出的每个请求的调试输出。对于您的代码段,我的输出如下所示:Fetching: GET https://oauth.reddit.com/comments/fgi5bd/Data: NoneParams: {'limit': 2048, 'sort': 'top', 'raw_json': 1}Response: 200 (116926 bytes)Fetching: POST https://oauth.reddit.com/api/morechildren/Data: [('api_type', 'json'), ('children', 'fk5u680,fk5tgxt,<--snip-->,fk5u67w,fk5ug3f'), ('link_id', 't3_fgi5bd'), ('sort', 'top')]Params: {'raw_json': 1}Sleeping: 0.21 seconds prior to callResponse: 200 (32753 bytes)以“Fetching”开头的每一行都是另一个网络请求,后续行进一步描述了该请求。框架挑战你说我知道Reddit api在每600秒时间段内提供600个请求。我需要此信息才能更有效地使用 api。虽然我不能确切地知道你所说的“更有效地使用api”是什么意思,但如果你担心你会超过速率限制,你根本不需要担心这一点。PRAW 的一个关键功能是它为您处理速率限制,确保您在不违反速率限制的情况下尽可能频繁地发出请求。