使用媒体更新状态-UnicodeDecodeError:' ascii'编解码器无法解码错误

时间:2015-08-06 09:13:27

标签: python-2.7 twitter twitter-oauth tweepy

使用Tweepy更新带有照片的Twitter帖子。

仅凭状态更新工作正常。

我正在Windows中构建我的文件名/路径,如下所示:

path = 'C:/Users/foo/Documents/media/'
photoname = 'photo1.jpg'
filename = path + photoname

这打印出一个格式很好的路径并复制到Windows资源管理器中,打开照片,所以路径和照片名称是正确的。

但是,当我在update_with_media中使用文件名执行时:

api.update_with_media(filename, status=tweet)

我收到以下错误消息:

File "build/bdist.macosx-10.9-intel/egg/tweepy/api.py", line 98, in update_with_media
File "build/bdist.macosx-10.9-intel/egg/tweepy/api.py", line 747, in _pack_image
UnicodeDecodeError: 'ascii' codec can't decode byte 0xff in position 0: ordinal not in range(128)

有关正在发生的事情的任何想法?

谢谢!

1 个答案:

答案 0 :(得分:1)

通过更新到更新版本的Tweepy解决了这个问题。我最近刚刚安装了Tweepy但不知何故得到了旧版本。

我正在使用v 2.3并执行了pip install --upgrade tweepy,更新到v 3.3

潜在的问题似乎是Twitter已经不再使用媒体流程更新其更新状态,因此较新版本的Tweepy包含了这些更改。

但是很高兴看到Tweepy保持其功能相同。功能' api.update_with_media(文件名,状态=推文)'也是新版本,Tweepy只是简单地处理Twitter API的变化'。