1

在 pgmagick 中,你像这样初始化一个图像:

Image('my_image.png')

我将对远程存储在 S3 上的文件进行操作,而不是将它们临时存储在磁盘上。有没有办法从 URL 打开图像文件?当我尝试简单地用 URL 替换文件名时,我收到一个错误:Unable to open file.

我希望能够使用 URL。如果有人对此有任何建议或如何扩展 pgmagick 来实现它,我会很高兴。

4

1 回答 1

1

最简单的方法(在我看来)是使用很棒的requests库。您可以一次从服务器获取每个图像,然后使用以下命令打开它Image()

from StringIO import StringIO
import requests
from pgmagick import Image, Blob

r = requests.get('https://server.com/path/to/image1.png', auth=('user', 'pass'))
img = Image(Blob(StringIO(r.content)))

这就是它的全部。身份验证当然不是必需的,但根据您的 S3 设置可能是必需的。玩得开心!

于 2014-04-02T22:22:15.017 回答