Tweepy + api v1 + keys



我有python代码,可以使用oauth2将推文发布到推特上,这很好,但我需要将一些图像附加到推文上,这似乎必须使用api v1.1 来完成

在twitter开发门户网站的项目设置下,用户身份验证显示";oAuth 1.0a和oAuth 2.0开启";Oauth 1.0a设置应用程序权限为读写权限。当我使用像这样的消费者密钥时,我不知道我应该为Oauth 1.0a使用哪些密钥

my_api_key="xxx"
my_api_secret="xxx"
auth = tw.OAuthHandler(my_api_key, my_api_secret)
api = tw.API(auth, wait_on_rate_limit=True)
tweet = api.update_status("Testing tweepy API v1")

我收到错误220-您的凭据不允许访问此资源。

如果我从有效的OAuth2代码中复制访问密钥,则会出现以下错误32-无法验证您的身份。

工作的OAuth2代码如下所示:

api = tweepy.Client(bearer_token=keys.twitter_bearer,
access_token=keys.access_key,
access_token_secret=keys.access_secret,
consumer_key=keys.consumer_key,
consumer_secret=keys.consumer_secret_key)
api.create_tweet(text=str)

我不确定我做错了什么。

编辑-am提升

回到基础,在其他一切听起来都正确的情况下研究代码。原来我只是做错了。

这项工作:

auth = tweepy.OAuth1UserHandler(
consumer_key, consumer_secret, access_token, access_token_secret
)
api = tweepy.API(auth)
image=".dataframe.png"
media=api.media_upload(image)
try:
api.update_status("Test",media_ids=[media.media_id])
except Exception as e:
print(e.class)
print(f"Exception occured - {e}")
else:
print("Success")

最新更新