Python 为什么“submission.permalink”和PRAW一起工作——即使我在源代码中找不到关于这个属性的任何信息?

Python 为什么“submission.permalink”和PRAW一起工作——即使我在源代码中找不到关于这个属性的任何信息?,python,reddit,praw,Python,Reddit,Praw,我正在寻找一个属性,其中包含提交标题,这是提交永久链接的一部分。不幸的是,根据praw文档,praw.models.reddit.submission.submission似乎不包含permalink属性 但是如果我跑 import praw print(praw.__version__) reddit = praw.Reddit(...) for submission in reddit.subreddit("redditdev").hot(limit=5): print(type(s

我正在寻找一个属性,其中包含提交标题,这是提交永久链接的一部分。不幸的是,根据praw文档,praw.models.reddit.submission.submission似乎不包含permalink属性

但是如果我跑

import praw
print(praw.__version__)
reddit = praw.Reddit(...)
for submission in reddit.subreddit("redditdev").hot(limit=5):
    print(type(submission), submission.permalink)
我去拿

如果您在GitHub上的源代码中搜索permalink,则最新版本也是如此:


发生什么事了?属性来自哪里?

PRAW动态提供Reddit通过API返回的属性。由于这些属性在Reddit端可能会发生更改,PRAW不做任何努力来记录它们,只是指导您如何发现可用的内容:


当您在reddit.subredditedditdev.hotlimit=5上迭代时,PRAW会向发出一个请求,该请求基本上返回与相同的数据。当访问后一个链接时,您应该会看到permalink属性出现5次,因为请求是5次提交。您还将看到提交对象可用的所有其他属性。

我得到的只是一个模糊的手波浪继承:但确切的原因是什么,我还不确定。我一直对改进文档的方法持开放态度。你愿意为这辆车提个请求吗?你太棒了。
4.4.0
<class 'praw.models.reddit.submission.Submission'> /r/redditdev/comments/77gz1m/new_mobile_friendly_reddit_search_is_now_in_beta/
<class 'praw.models.reddit.submission.Submission'> /r/redditdev/comments/77dkl6/can_anyone_explain_why_my_if_x_in_y_isnt_working/
<class 'praw.models.reddit.submission.Submission'> /r/redditdev/comments/77ci3v/ratelimit_you_are_doing_that_too_much/
<class 'praw.models.reddit.submission.Submission'> /r/redditdev/comments/77bak9/is_there_some_standard_way_to_host_bots/
<class 'praw.models.reddit.submission.Submission'> /r/redditdev/comments/77ci1v/praw_checking_if_my_bot_has_already_posted_in_a/
$ grep -r -i -l "permalink" --include "*.py" /usr/local/lib/python3.6/dist-packages/praw/
/usr/local/lib/python3.6/dist-packages/praw/models/reddit/comment.py