我正在使用 PRAW 创建一个每天提交一次内容的 Reddit 机器人。提交后我想保存提交的 url 并将其写入文本文件。
url = r.submit(subreddit, submission_title, text=submission_text)
Run Code Online (Sandbox Code Playgroud)
以上返回一个提交对象,但我想要实际的网址。有没有办法从提交对象中获取 url,或者我是否需要做其他事情来获取 url?
submission.shortlink(以前.short_link)是您正在寻找的,如果submission.permalink还不够好。
reddit = praw.Reddit("Amos")
submission = reddit.get_submission(submission_id="XYZ")
print submission.permalink
>>> www.reddit.com/r/subreddit/comments/XYZ
Run Code Online (Sandbox Code Playgroud)
我看到@TankorSmash 已经回答了您的问题,尽管我想我可能会添加一些基础知识以供将来参考:
如果您使用“ dir(object) ”,您将能够看到与 Reddit API 相关的属性和方法(您可以使用它来测试和查看影响正在测试的给定对象的所有属性)。您可以忽略以下划线开头的所有内容(很可能)。
一个例子是:
submissionURL = submission.url
Run Code Online (Sandbox Code Playgroud)
或者您可以直接访问PRAW 获取数据的来源。变量名称不是由 PRAW 设置的,它们来自这个 JSON(上面链接)。