将下载的图像转换为单行文件对象

时间:2017-01-18 14:23:13

标签: python python-2.7 file

这是我正在使用的DeathByCaptcha API文档的引用。

dict deathbycaptcha.Client.decode(file imageFile, int timeout)
dict deathbycaptcha.Client.decode(str imageFileName, int timeout)

它可以接受图像文件的路径或文件对象

我有这行代码。

client.decode(urllib.urlopen('https://example/image.jpg').read(), 30)

但是它给了我错误,因为.read()会返回file-like对象。

我的偏好是在一行中完成。

有没有什么方法可以轻松地将read()读取的流转换为类似文件的对象?

如果不能像我们在PHP (string) 100那样在一行中使用那么我会接受一个多行

1 个答案:

答案 0 :(得分:3)

我不确定urllib.urlopen,但您可以使用urllib2.urlopen方法获取可以传递给file-like函数的decode对象。它看起来或多或少像:

client.decode(urllib2.urlopen('https://example/image.jpg'), 30)

编辑:我看了urllib documentation,看起来urllib.urlopen也会返回file-like个对象。