延长并不意味着文件是一个实际的图像,如果要检查该文件确实是一个图像,你可以使用imagemagik identify:
from subprocess import check_output, CalledProcessError
from tempfile import NamedTemporaryFile
import requests
from shutil import move
r = requests.get("http://www.digimouth.com/news/media/2011/09/google-logo.jpg").content
tmp = NamedTemporaryFile("wb", delete=False, dir=".")
tmp.write(r)
try:
out = check_output(["identify", "-format", "%m", tmp.name])
print(out)
move(tmp.name, "whatever.{}".format(out.lower()))
except CalledProcessError:
tmp.delete = True
要查看所有格式支持运行identify -list format
。
这是什么意思*如果链接包含图片或不* –
你必须分析文件扩展名。 – Serenity