python - 用python脚本抓取gif动画

标签 python

我一直在 iOS 上使用 Pythonista 创建一些自动化脚本。

我在尝试从远程 URL 获取动画 gif 时遇到问题。我想出了以下脚本。

import Image
from urllib import urlopen
from io import BytesIO

url = "http://someurl.com/funny.gif"
img = Image.open(BytesIO(urlopen(url).read()))

我得到了图像,但它似乎只是 gif 的第一帧?我猜这与 BytesIO 没有读取整个文件有关,但我不确定?

希望我走的是正确的道路。

最佳答案

你就快到了。您可以使用 img.seek 来前进帧。所以..

import Image
from urllib import urlopen
from io import BytesIO
url = 'http://upload.wikimedia.org/wikipedia/commons/2/2c/Rotating_earth_%28large%29.gif'

img = Image.open(BytesIO(urlopen(url).read()))

# Start with first frame
img.seek(0)
#img.show()

# Advance by one
img.seek(img.tell() + 1)
#img.show()

Here's a SO post展示如何使用 Image 类保存 gif。

关于python - 用python脚本抓取gif动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24688232/

相关文章:

python - 如何将 2d 数组堆叠在现有 3d 数组上 (python)

python - Python 格式字符串的 Vim 语法高亮显示

python - 逆 FFT 在不应返回负值时返回负值

python - 在 Python 2.7 中将列表字典转换为字典列表

python - 如何在没有类名的情况下创建列表?

python - 在不打开 Pythonwin 的情况下运行 Python 脚本

python - 如何让 Intellij 将版权放在 python 文件上

python - 在 shell/python 中传递变量

python - 从嵌套在列表 Python 中的字典返回键的值

UDP 比特流跟踪器的 Python 抓取