openpyxl 插入图片报错,keyError: ‘.webp‘

踩坑记录:python读取Excel(字典形式)经典报错 —— KeyError: 文章目录前言python读取Excel经典报错 —— KeyError: 解决方案出现问题:解决方法:梦中的婚礼,sincerely,end. 前言   利用python读取Excel表格,出现“KeyError:”错误,前前后后看了近3小时,发现竟是一个很纯的错误,已解决,如有错误,请纠正,万分感谢! python读取Excel经典报错 —— KeyError: 解决方案 出现问题: Traceback (most recent call last): File "C:/XXXXXXXXXXX 阅读详情
AI摘要

文章讲述了在使用requests获取网页图片并用openpyxl插入Excel时遇到的KeyError,发现是由于webp格式问题。作者通过修改文件类型和保存方式解决了问题,总结了排查和解决此类bug的过程。

背景

在使用requests请求网页,并将图片保存到本地时,然后通过openyxl插入到excel,在最后的wb.save()时报错keyError: ‘.webp’,通过筛选找到报错的图片,发现本地有这个图片并且能正常打开,就是不能正常插入到excel中。

解决步骤

1.尝试修改文件类型

之前文件类型保存为png,误以为是png格式的问题,所以将文件后缀改为jpg,并重新尝试插入图片到excel,结果还是报错,手动修改文件类型为jpg后,发现可行,所以就想到了是文件保存方式不对

2.修改文件保存方式:

之前是requests得到文件的content,然后用with open保存图片,他这个大坑是原始网页是一个滑动的图片,虽然能正常保存和打开,但是插入时就会报错,具体原因以后细究。

#之前代码如下
 res = requests.get(xx, headers=headers)
 if res.status_code == 200:
      with open(f'./图片/{hh}.png', 'wb') as f:
          f.write(res.content)

改为使用

from io import BytesIO
res = requests.get(xx, headers=headers)
        if res.status_code == 200:
                img = Image.open(BytesIO(res.content))
                img.save(f'./资料文件/图片/{hh}.png')

尝试再次插入到excel中发现成功,大功告成!!!

3.总结

排解bug用了大约3个小时,从开始出现bug,然后从海量数据中找到找到出错的图片所属的品类,然后在品类中先查看该品类的所有图片是否都已经保存到本地,然后根据列表的切片,找到出错的数据,开始排查其与其他网页的区别,初步尝试+GPT解决问题!!!

Python批量处理Word:自动插入图片和表格的办公脚本 在办公自动化场景中,批量处理Word文档的图片插入与表格生成是常见需求。其原理基于python-docx库直接操作docx的XML结构,无需依赖Office环境,实现跨平台稳定运行。技术价值在于将重复劳动转化为可复用的脚本流水线,显著提升文档处理效率。典型应用包括标书制作、检测报告和巡检记录等批量文档生成。通过数据驱动和配置外置,脚本可灵活适应不同数据源与排版要求。本文分享的Python脚本正是围绕这一场景,封装了图片批量插入与表格批量写入功能,帮助行政、测试等人员快速完成文档自动化。 阅读详情

相关推荐

从零配置华为S5720交换机VLAN:Web界面与命令行双模式详解(附拓扑图)

本文详细解析华为S5720交换机VLAN配置的全过程,涵盖Web界面与命令行(CLI)双模式操作指南。从基础环境准备到多交换机环境配置同步,特别针对S5720-52X系列交换机的VLANif接口、端口分配策略及交换机堆叠技术进行深入讲解,并附实用拓扑图与配置示例,助力企业网络管理员高效完成VLAN部署。

happy2的博客 1374

[python]excel中url转图片

遇到的一个问题 图片url是webp格式,下载图片后,插入excel报错 报错信息 Traceback (most recent call last): File "excel_utils.py", line 86, in <module> obj.process_push_res("./uncheck_2021-10-12.xlsx", "./res1.xlsx") File "excel_utils.py", line 81, in process_push_res

u012720552的专栏 1493

SpringBoot 指标监控——Actuator

1、 访问:localhost:8000/actuator 设置健康监控显示具体情况 metrics http://localhost:8000/actuator/metrics/jvm.gc.live.data.size 定制化health信息 //利用构造器,在注册中心中添加cityService.saveCity.count指标 public CityServiceImpl(MeterRegistry meter...

weixin_44302046的博客 4633

解决linux环境python的PIL不支持处理webp格式图片的问题

解决linux环境python的PIL不支持处理webp格式图片的问题

weixin_41956627的博客 1843

VisionMaster图像源模块的5个隐藏功能:从自动切换到二次开发接口

本文深入解析了VisionMaster图像源模块的5个隐藏功能,从基础的自动切换与字符触发过滤,到高级的脚本扩展与基于COM组件的二次开发接口。这些功能能显著提升工业视觉项目的自动化水平、灵活性与系统集成能力,帮助开发者实现更高效的离线测试流水线和外部精确控制。

rgv23456789的博客 652

反激电源RCD尖峰吸收电路的原理以及调试

反激电源RCD尖峰吸收电路的原理以及调试

mnmmnmn的博客 9255

Linux上python PIL库不支持webp图片的解决方案

Linux上python PIL库不支持webp图片的解决方案

weixin_46020146的博客 364

3、硬件工程师笔试面试学习汇总——器件篇目录(2025版本)

硬件工程师笔试面试学习

XU157303764的博客 7632

python 提示 keyError 的4种解决方法

https://blog.csdn.net/u011089523/article/details/72887163 在读取dict的key和value时,如果key不存在,就会触发KeyError错误,如: Python t = { 'a': '1', 'b': '2', 'c': '3', } print(t['d']) 就会出现: <code class="language-plain hljs" style="f

学长的猫的博客 19万+

Transformer 面试题及详细答案120道(1-10)-- 基础概念

本文总结了Transformer模型的10个常见面试问题及答案,涵盖了其核心结构、创新点、工作机制等关键知识点。主要内容包括:Transformer的自注意力机制和多头注意力机制创新点,相比RNN/CNN的优势,模型在《Attention Is All You Need》论文中的提出背景,以及Encoder-Decoder协同工作流程等。重点解析了位置编码的作用、长距离依赖处理能力、与传统注意力机制的区别等核心问题。每个问题都给出了简明扼要的专业解答,适合作为Transformer相关面试准备的参考资料。

大剑师兰特的GIS世界 849

PyTorch实战(4)——卷积神经网络(Convolutional Neural Network,CNN)

卷积神经网络 (Convolutional Neural Network, CNN) 是一种广泛应用的深度学习模型。通过参数共享、局部感知和空间结构等优势,能够更好地处理图像数据,并在图像识别、目标检测和图像生成等任务中展现出强大的能力。在本节中,介绍了卷积的计算方法以及卷积神经网络的基本组件,并使用 PyTorch 构建了卷积神经网络以深入了解其工作原理。

盼小辉丶的博客 1万+

openpyxl 插入图片报错:TypeError: 'module' object is not callable

背景 使用 openpyxl单元格插入图片时报错,代码如下: from PIL import Image img_file = ".//images//1.jpg" img = Image(img_file) sheet.column_dimensions['B'].width = 15.0 sheet.row_dimensions[row].height = 80 img.width = 100...

神薯片 1386

三菱FX5U气缸控制功能块(完整ST源代码+示例程序)

如果机器包含100个气缸,我们只需要修改数组的元素数量就可以了,效率非常的高。待续....博途PLC 面向对象系列之“双通气缸功能块“(SCL代码)_plc面向对象-优快云博客文章浏览阅读667次。本文介绍了博途PLC中面向对象编程的应用,重点讲解了双通气缸的功能块设计,包括双通电磁阀功能块、双通气缸的UDT数据类型以及SCL代码实现。同时,对比了双通与单通电磁阀的差异,并讨论了将单通气缸改造为双通气缸的方法,强调了双通气缸在安全性上的优势。

RXXW_Dor的博客 1032

openpyxl保存save报错:KeyError: ‘.mpo‘

这个原因是因为保存图片的时候PIL库不发兼容各个图片文件后缀,需开头加两行忽略图片后缀就可以了。openpyxl保存save报错:KeyError: ‘.mpo‘

weixin_49223979的博客 704

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

openpyxl 内将图片链接 转为图片

【代码】openpyxl 内将图片链接 转为图片。

成为王的男人 668

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

python中openpyxl库用法详解

python中openpyxl库用法详解

IT之一小佬的博客 3万+

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

openpyxl 复制某些带图片的Excel时出现 KeyError: ‘.mpo‘

解决方案 在操作图片的py的头部加入如下代码: from PIL import JpegImagePlugin JpegImagePlugin._getmp = lambda x:None mime = mimetypes.types_map[True][ext] KeyError: '.mpo’ 使用Openpyxl 操作Excel里的图片时出现以上错误,百度了也没有,去google逛了一圈,发现是有一种image的mime类型为.mpo,而我的Excel里的图片明明为.png格式的。 样例如下: &

sunlight in sky的博客 2797

python保存图片到指定路径,如何使用Python PIL(枕头)将图像保存在特定的文件目录中,而不会由于以下原因而发生KeyError:save_handler = SAVE [format.up...

I am trying to crop specific elements out of a larger image of the periodic table, then saving them in a specific file directory, this file directory is inside an additional folder, and this folder is...

weixin_39654352的博客 1265

Python3,区区10行代码,批量把图片插入Excel指定单元格中,省下时间去烫头发。

年底了, 要烫头发了。

商务合作 | 面试培训 | 职场规划 ==>主页扫码 1万+

PIL、Pillow安装使用方法

PIL(Python Imaging Library)是Python常用的图像处理库,而Pillow是PIL的一个友好Fork,提供了了广泛的文件格式支持,强大的图像处理能力,主要包括图像储存、图像显示、格式转换以及基本的图像处理操作等。 Pillow的文档:http://pillow.readthedocs.io/en/latest/ Pillow的github:https://github...

weixin_30587927的博客 1129

PIL库

PILImageopensavethumbnailcroptransposepastesplitmergeresizeconvertpointImageFilterfilterImageEnhanceBrightness & ContrastImageSequence()(处理图像序列) Image open open(filename,mode) (打开一张图像) Image.open返回一个Image对象 Image属性 size 表示图像的宽度和高度(像素表示); format 表示

Ficus的博客 1792

webp-bin 踩坑

记项目上线踩的坑 拖拉半个月的项目终于上线了,本地npm install 和npm run dev 都是没有问题的, 但是运维的linux系统 npm install 就报错了… webp-bin 这个项目里没有用到啊,于是查了查 ,是因为ui提供的图片是webp格式的,这个格式是对app的图片进行压缩,已达到为app瘦身所使用的。原文链接:APP瘦身之webp实践,感兴趣可以看看,虽...

qq_40597889的博客 3556

关于KeyError:‘ ‘问题的解决

今天在使用python中的函数format的过程中有个很奇怪的错误:KeyError: 'name’ 在网上查了很久没有很明确的解决办法,后面查format函数使用才知道如何解决 例子如下: 解决办法是多加一层大括号 如果对你有帮助,给我点个赞吧 ...

weixin_43254438的博客 5万+

【Python】KeyError解决方法

#如果不知道dict中是否有key的值 dict.get(key) #如果用 dict[key] 读取会报KeyError异常

趣 7万+
上一篇: windows 修改python包的默认下载路径
下一篇: xlwings 操作excel (持续更新中)
wantpython_king
博客等级 码龄5年 30粉丝 11原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值