如何在Python中url编码视频的二进制内容?

时间:2013-02-20 14:49:47

标签: python tumblr

我想使用Tumblpy library使用API​​将视频移植到Tumblr。

我的代码是:

import requests
r = requests.get(video-url)
f = {'data':r.content}
dat = urllib.urlencode(f)


t.post('post', blog_url='http://tumblrname.tumblr.com/',params={'type':'video', 
            'title':post.title, 'slug': post.slug,'date':post.date,'data':dat,'tags':post.tagscsv,
                'caption': post.body_html}) #t is TumblPy instance

好吧,我没有成功。我确实认为我错过了如何编码二进制内容以使帖子成功,但我不确定。

1 个答案:

答案 0 :(得分:1)

据推测,它与发布照片的方式类似,在这种情况下,库需要一个文件(如)对象。 requests响应可以充当类似文件的对象:

import requests
r = requests.get(video_url)

t.post('post', blog_url='http://tumblrname.tumblr.com/', 
    params={'type': 'video', 'title': post.title, 'slug': post.slug, 
            'date': post.date, 'data': r.raw, 'tags': post.tagscsv,
            'caption': post.body_html})

其中r.raw为您提供类似文件的对象,在读取时会生成从video_url读取的视频数据。