1

我用 PRAW 构建了一个非常简单的脚本,可以打印 reddit.com/r/worldnews 上的前 10 个链接标题。我希望它与 GeekTool 一起使用,但只显示以下内容:

“REDDIT 上的 10 大新闻

1 个新闻标题

2"

我不知道为什么会发生这种情况,因为直接从命令行运行脚本时我没有任何问题。

这是python脚本:

import praw

def main():
    subreddit = r.get_subreddit('worldnews')
    x = 1
    print "TOP 10 NEWS ON REDDIT"
    print '' 
    for submission in subreddit.get_hot(limit=10):
        print x, submission.title
        x = x+1
        print ' '

if __name__ == "__main__":
    user_agent = "Top10 0.1 by /u/alexisfg"
    r = praw.Reddit(user_agent=user_agent)
    main()
4

1 回答 1

0

如果您在 main 函数周围放置 try...except 以打印任何异常,您会收到以下错误消息:

ascii codec can't encode character u'\u2019' in position 12: ordinal not in range(128)

所以这是一个编码问题 - 第二个标题中的某些字符不在 ASCII 范围内,python/Geektool 将其用作默认编码。您可以通过使用明确编码标题字符串来解决此问题.encode('utf-8')

于 2014-08-12T11:56:52.413 回答