首先贴出我在别人博客上查到的一段代码

im = Image.open('image.gif')
def iter_frames(im):try:i= 0while 1:im.seek(i)imframe = im.copy()if i == 0:palette = imframe.getpalette()else:imframe.putpalette(palette)yield imframei += 1except EOFError:pass
for i, frame in enumerate(iter_frames(im)):frame.save('image.png',**frame.info)

经检验,我把gif转换成了png
但是我把gif转换成jpg的时候,报出如下错误

Traceback (most recent call last):File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38-32\lib\site-packages\PIL\JpegImagePlugin.py", line 612, in _saverawmode = RAWMODE[im.mode]
KeyError: 'P'During handling of the above exception, another exception occurred:Traceback (most recent call last):File "C:/Users/Administrator/PycharmProjects/untitled/tran.py", line 31, in <module>frame.save(r'C:\Users\Administrator\Desktop\r'+'.jpg',**frame.info)File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38-32\lib\site-packages\PIL\Image.py", line 2134, in savesave_handler(self, fp, filename)File "C:\Users\Administrator\AppData\Local\Programs\Python\Python38-32\lib\site-packages\PIL\JpegImagePlugin.py", line 614, in _saveraise OSError("cannot write mode %s as JPEG" % im.mode)
OSError: cannot write mode P as JPEG

此时需要再加上一句

im = im.convert('RGB')

附上完整的代码,粘贴复制注意修改图片路径
关于PIL和PILLOW的问题,可以去下面这个链接了解
点击了解PIL和PILLOW

from PIL import Image
im = Image.open(r'image.gif')#打开gif格式的图片
im = im.convert('RGB')
def iter_frames(im):try:i= 0while 1:im.seek(i)imframe = im.copy()if i == 0:palette = imframe.getpalette()else:imframe.putpalette(palette)yield imframei += 1except EOFError:pass
for i, frame in enumerate(iter_frames(im)):frame.save(r'destpath'+'.jpg',**frame.info)#保存成jpg格式

python实现GIF,PNG,JPG图片转换报错解决相关推荐

  1. vue 动态加载图片路径报错解决方法

    vue 动态加载图片路径报错解决方法 参考文章: (1)vue 动态加载图片路径报错解决方法 (2)https://www.cnblogs.com/qingcui277/p/8930507.html ...

  2. Python中使用pip安装第三方库报错解决方法

    参考:https://blog.csdn.net/answerxiaoai/article/details/104297187 在安装Google开源维护的算法优化求解器Ortools时出现错误,采用 ...

  3. 解决python通过pip离线安装flask,numpy报错解决(centos)

    1. 离线安装Python https://www.python.org/ftp/python/3.7.1/Python-3.7.1.tgz 解压,编译,安装 tar xzvf Python-3.7. ...

  4. 记一次p2v转换报错解决

    一台rhel6.9的物理机做p2v时报如下错误 FAILED: An error occurred during the conversion: 'KeepOneBootEntry: There is ...

  5. Python 中文注释报错解决方法

    Python 中文注释报错解决方法 参考文章: (1)Python 中文注释报错解决方法 (2)https://www.cnblogs.com/cjiong/p/5881983.html 备忘一下.

  6. 全局scss封装引入背景图片路径报错

    最近使用scss做了全局的mixin封装,用到背景图,意外发现通过相对路径引入图片后报错,大致意思为图片路径不对,改为了使用@代替src路径引入图片依然报错,一番百度后带出解决方案通过 ~@ 代替sr ...

  7. java fastjson 泛型_解决fastjson泛型转换报错的解决方法

    错误信息 Exception in thread "main" java.lang.ClassCastException: com.alibaba.fastjson.JSONObj ...

  8. Python语言importError:cannot import name ‘InvalidArgumentException‘报错的解决方法:

    Python语言importError:cannot import name 'InvalidArgumentException'报错的解决方法: 参考文章: (1)Python语言importErr ...

  9. VsCode配置Python开发环境后运行代码会报错“无法加载文件 D:\Code\xxx\poetry-demo\.venv\Scripts\Activate.ps1”

    问题描述:在VsCode中配置Python开发环境后运行代码会报错"无法加载文件 D:\Code\xxx\poetry-demo\.venv\Scripts\Activate.ps1&quo ...

  10. python︱模块加载(pip安装)以及pycharm安装与报错解决方式

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 准备放下R开始学python,真是痛苦,因为找 ...

最新文章

  1. u2net encode
  2. 阿里云Redis开发规范[转]
  3. 整合.NET WebAPI和 Vuejs——在.NET单体应用中使用 Vuejs 和 ElementUI
  4. 三态门三个状态vhdl_温故知新,高阻态和三态门
  5. 前端windows下常用的CMD 命令归纳
  6. rk3399_android7.1关于看门狗驱动的实现原理说明
  7. AirServer Mac Airplay投屏工具
  8. 移动友华PT924光猫获取超级用户方法
  9. php-screw 安装,liunx 下安装 php_screw 扩展 以及报错处理
  10. 微软服务器系统版本有几个,windows系统有几个版本
  11. 三年高级开发,六年成为架构师,到CTO我用了12年
  12. 李航统计学习方法总结与整理
  13. 情人节有哪些礼物可以送给男朋友的,情人节送礼推荐
  14. Pr 复古胶片老电影回忆效果
  15. 手动对整盘抓轨的APE(没有CUE文件)进行分轨
  16. 域名转为服务器IP地址的几种方式
  17. Pie Chart(nvd3)
  18. 湖南工业大学电费数据抓取(完美校园版)
  19. 2010年1月27日俱乐部活动,李开复博士与CTO俱乐部会员 讲座交流会
  20. idea的英文是什么意思_idea是什么意思_idea的音标_idea的复数_英语巴士双语词典...

热门文章

  1. 主数据管理之二:主数据管理系统的功能组件
  2. QAC/QAC++静态软件代码测试分析-试用工具
  3. java加密算法之MD5篇
  4. T6 根据书籍条形码ISBN查询书籍,完整的方案,可安装
  5. 阿里巴巴实习 面试题
  6. mysql数据库自动备份软件SQLBackupAndFTP简介(图文)
  7. 网页连接mysql教程_网页怎么连接到数据库?
  8. 【C】 typedef struct LNode * list
  9. 2021固态硬盘排行前十 十大固态硬盘排名
  10. supervise用法_supervise过去式和用法例句