GeekTool只迭代我的python循环一次

时间:2014-08-12 11:39:15

标签: python praw geektool

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

" REDDIT的十大新闻

1 NEWS TITLE

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()

1 个答案:

答案 0 :(得分:0)

如果您尝试...除了主函数周围打印任何异常,您会收到以下错误消息:

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

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