使用PRAW获取&而不是&in title return

2024-09-26 17:53:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我想用PRAW获得给定subreddit的前25名:

import praw
subreddit = 'gamedeals'
r = praw.Reddit(user_agent='getting top 25 of all time by /u/sqrg')
submissions = r.get_subreddit(subreddit).get_top_from_all(limit=25)
titlesFile = open("text.txt", 'w')
for s in submissions:
    titlesFile.write(s.title.encode('utf-8', 'replace') + '\n')
titlesFile.close()

我得到以下错误:

UnicodeEncodeError: 'ascii' codec can't encode character u'\xa3' in position 63: ordinal not in range(128)

所以我把for循环中的行改为:

^{pr2}$

它是有效的,但是在文本.txt我得到的文件是&,而不是&。我可以用一些字符串替换函数来更改它们,但是有没有办法直接写出正确的标题呢?另外,为什么我必须使用encode()方法?在


Tags: inimporttxtforgettopallencode

热门问题