【问题标题】:How to return raw comment data in PRAW instead of generator (Python 3.5)?如何在 PRAW 而不是生成器(Python 3.5)中返回原始评论数据?
【发布时间】:2016-04-02 23:56:57
【问题描述】:

我最近一直在摆弄 PRAW 模块和 Python 3 的 Reddit API。

我尝试的一件事是检索我帐户中的第一个 cmets 并将其打印到控制台。我的代码是...

comment = user.get_comments(limit = 1)
print(comment)

每次只返回地址:

<generator object get_content at 0x034A5C30>

为了获取原始字符串数据(注释本身),我还尝试了 str()、漂亮打印,甚至将 str(comment) 导出到外部文本文件。什么都没有产生我想要达到的结果。

我是这个 API 的新手,所以尽量放轻松。我怎样才能打印评论本身而不是地址,无论是打印到控制台还是文本文件?

【问题讨论】:

    标签: python generator reddit praw


    【解决方案1】:

    get_comments() 不返回一条评论;它返回一个对象,您可以对其进行迭代以检索 cmets。您可以使用 next() 函数从迭代器中获取第一个(在这种情况下也是唯一的)对象,例如

    comment = next(user.get_comments(limit = 1))
    

    不过,你最终得到的仍然是一个评论对象。您可能需要使用comment.body 来获取评论文本。

    【讨论】:

    • 成功了!谢谢你。一旦 Stack 让我选择一个正确的答案,我会的。由于某种原因,这让我等了一会儿。
    • 为了子孙后代还值得注意:您关于comment.body 打印文本的声明是正确的。但是, print(comment) 也会产生相同的结果。
    猜你喜欢
    • 2011-10-29
    • 1970-01-01
    • 2014-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-14
    • 2020-10-17
    相关资源
    最近更新 更多