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

您所在的位置:网站首页 excel表格怎么放入图片好看又简单 Python3,区区10行代码,批量把图片插入Excel指定单元格中,省下时间去烫头发。

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

2024-01-08 16:41| 来源: 网络整理| 查看: 265

这里写目录标题 1、引言2、代码实战2.1 代码示例2.2 遇到问题及处理方案2.2.1 遇到问题2.2.2 解决方案 3、总结

1、引言

小屌丝:鱼哥, 想请教你个问题。 小鱼:啥问题呢? 小屌丝:我想把图片插入到excel里面 小鱼:这个还用问我? 你是昨晚喝多了? 小屌丝:不是的,我是想把图片插入到excel单元格里面 小鱼:这么简单的操作,你竟然也说得出口! 小屌丝:不是的,我是想批量插入图片 小鱼:excel不支持批量插入图片功能?? 小屌丝:是的,我想把图片批量按照名称和统一尺寸,放入到单元格里面 小鱼:昂… 这个 excel也能批量操作啊。 小屌丝:太费劲了, 我有100多张图片, 我还得手动调单元格的大小, 小鱼:那确实挺多的, 那你就慢慢搞一下了,闲着也是闲着… 小屌丝:鱼哥,别啊,节省的时间,去泡个澡,剪个头发,不舒服吗? 小鱼:也对,不过现在剪头发都是198了… 小屌丝:没事鱼哥, 我有券… 小鱼:那… 等我会啊… 在这里插入图片描述

2、代码实战 2.1 代码示例

代码示例

# -*- coding: utf-8 -*- # @Time : 2022-12-05 # @Author : Carl_DJ ''' 实现功能: 在excel中,对应的名称后面,插入图片 ''' import openpyxl,PIL from openpyxl.drawing.image import Image import os #excel文件路径 excel_path = './pic/image.xlsx' #图片名称为A列 img_name_column = 'A' #图片写入B列 img_column = 'B' #读取图片的地址 img_path = './data/picture' #转换图片格式,强制转换成jpg格式 # img_type = PIL.Image.open(img_path).convert("RGB") # img_type.save(img_path, 'jpeg') #打开excel文件 wb = openpyxl.load_workbook(excel_path) #获取sheet页 ws = wb.active for i, v in enumerate(ws[img_name_column], start=1): #图片路径 img_file_path = os.path.join(img_path, f"{v.value}.jpg") #获取图片 img = Image(img_file_path) #设置图片的大小 img.width, img.height = (110, 110) # 设置表格的宽20和高85 ws.column_dimensions[img_column].width = 20 ws.row_dimensions[i].height = 85 # 图片插入名称对应单元格 ws.add_image(img, anchor=img_column + str(i)) #保存 wb.save(excel_path) # 保存 #关闭 wb.close() print(f'保存完成')

运行结果 在这里插入图片描述

2.2 遇到问题及处理方案 2.2.1 遇到问题

这里,小鱼在运行脚本时, 遇到一个错误提示, 图片的类型是 “.webp”,如下: 在这里插入图片描述 我首先看图片的后缀,是不是.webp,发现,已修改为.jpg 在这里插入图片描述 于是,小鱼就想到了,是不是下载图片的时候, 虽然图片的后缀改成.jpg,但是,图片的本质,还是**.webp**格式, 为了验证小鱼的猜想,我就重新下载一次百度图片,如下: 在这里插入图片描述 确实,是这样的。

2.2.2 解决方案

遇到这种问题,两种解决方案:

1、直接下载jgp格式的图片; 可以参照小鱼的这篇《Python3,5行代码,让你拥有无限量壁纸美图》 ,这样下载的都是jpg格式的图片。

2、代码强制转换:

强制转换图片格式:

#转换图片格式,强制转换成jpeg格式 img_type = PIL.Image.open(img_path).convert("RGB") img_type.save(img_path, 'jpeg') 3、总结

看到这里,今天的分享就差不多结束了。 在2022年初的时候, 小鱼把图片写入到excel里面,得到的反馈很不错。

《Python3,19行代码,我把她的照片写入到Excel中,2022年伊始,她终于被我感动了。》 今天,在2023年的年初 ,我们把图片插入到单元格中,可算是把图片与excel玩的明明白白的。 当然, 关于python的更多更有趣的知识, 可以关注小鱼的 Python专栏。

我是小鱼:

CSDN 博客专家;阿里云社区 专家博主;51CTO博客专家;51 认证讲师;企业金牌面试官;

关注我,带你学习更多更有趣的Python知识。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3