通过praw提交帖子时,如何返回该帖子的网址?

时间:2016-07-07 23:47:19

标签: python bots praw

我使用以下代码提交自我发布信息。一旦提交,我希望该帖子的URL存储在变量中。我是python和praw的新手,所以我可能会遗漏一些明显的东西。

import praw

sub_reddit = 'test'
user_agent = 'user agent info'
post_title = 'post title text'
post_body = 'post body text'

r = praw.Reddit(user_agent=user_agent)

def login():
    r.login('USERNAME', 'PASSWORD')

def self_post():
    r.submit(sub_reddit, post_title, text=post_body)

login()
self_post()

查看文档,我发现this表示.submit的返回如下:

  

"新创建的Submission对象,如果是reddit实例   可以访问它。否则,请将网址返回到提交内容。

如果是这种情况,我该如何获得该链接?我无法进行大量不同的测试,因为API对提交内容有限制,因此我不断尝试阻止他们尝试新内容。

2 个答案:

答案 0 :(得分:1)

返回响应并将其分配给变量:

def self_post():
    return r.submit(sub_reddit, post_title, text=post_body)

login()
resp = self_post()

答案 1 :(得分:1)

提交链接后,您可以使用.short_link获取提交的网址:

submission = r.submit(sub_reddit, post_title, text=post_body)
submission.short_link