首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >向reddit_api添加对flair的支持

向reddit_api添加对flair的支持
EN

Stack Overflow用户
提问于 2011-11-25 07:52:43
回答 1查看 762关注 0票数 1

我试图在reddit_api中添加对reddit flair api的支持,但似乎没有取得任何进展。

我在urls.py中添加了以下内容

代码语言:javascript
复制
  ("api/", {
            ...
            "flair": "flair/"
           }),

并将以下内容发送到reddit.py

代码语言:javascript
复制
@require_login
def set_flair(self, subreddit, user, text='', css_class=''):
    """Set flair of user in given subreddit"""
    url = urls["flair"]
    params = {'r': subreddit,
              'user': user,
              'text': text,
              'css_class': css_class,
              'uh': self.modhash}
    return self._request_json(url, params)

但是我的代码似乎没有明显的效果:

代码语言:javascript
复制
import reddit

r = reddit.Reddit(user_agent='User rating modifier')
r.login(user='xxxx', password='xxxx')
r.set_flair('subreddit', 'username', 'textflair', 'cssclass')

我没有得到一个错误,但是用户flair没有添加到reddit上。reddit_api的其他功能非常适合我,而且我在reddit上拥有所有正确的版主权限。我的代码是不是出了什么问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-29 19:35:41

下面是一个有效的set_flair函数:

代码语言:javascript
复制
@require_login
def set_flair(self, subreddit, user, text='', css_class=''):
    """Set flair of user in given subreddit"""
    url = urls["flair"]
    params = {'r': subreddit,
              'name': user,
              'text': text,
              'css_class': css_class,
              'uh': self.user.modhash}
    return self._request_json(url, params)

在运行你的代码后,我得到的第一个错误是.error.USER_REQUIRED (“请登录来做这件事”)。specifically states接口,用户的modhash是必需的。所以我把self.modhash改成了self.user.modhash

第二个错误是.error.NO_USER.field-name。只需将user参数更改为name即可。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8263581

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档