通过 python TwitterAPI 发布推文时出错

Error posting a tweet via python TwitterAPI

我正在尝试 post 使用 oAuth2 通过 TwitterApi 发送推文,但出现错误

'u'{"errors":[{"code":220,"message":"Your credentials do not allow access to this resource."}]}'

我的代码如下: 从 TwitterAPI 导入 TwitterAPI

CONSUMER_KEY = 'xyz'
CONSUMER_SECRET = 'xyz'

def tweet_it():
    api = TwitterAPI(CONSUMER_KEY, CONSUMER_SECRET, auth_type='oAuth2')
    r = api.request('statuses/update', {'status': 'Hello World!'})
    pass

if __name__ == "__main__":
    tweet_it()

我已将我的应用帐户权限设置为 'Read, Write and Access direct messages' 并重新生成用户密钥。我错过了什么?

我可以用这种方式搜索推文,没有任何问题。

我可以 post 并使用 oAuth1 进行搜索。

我已经找到解决方案或者最好说出问题所在。

我的问题中描述的行为是正确的,因为我使用的是 仅限应用程序的身份验证,因此不允许访问某些 API 调用,请参阅 https://dev.twitter.com/oauth/application-only

关注推特 api 文档

  • 如果仅调用我的帐户,最好使用 oAuth1 并指定消费者密钥和访问令牌以及相应的机密。
  • 要从第 3 方应用程序调用它,您应该使用三足授权,请参阅 https://dev.twitter.com/oauth/3-legged