excel图片变成代码_python处理excel中的图片-裁剪

分享最近学习python处理excel中的图片一段代码,我是做无线通信工作的(无线网络优化,俗称“网优”),我以实际工作中用到的案例进行分享。写的不好请看官多多担待,作为初学者我会继续努力。

工作中我们会经常遇到这样的问题:一个excel报告文件中有很多图片,每张图片的顶部有些标记的信息不想保留(经纬度等信息),要是人工处理就太费时费力了(截图再重新进行粘贴,每个excel中有20多张图片要处理,这样的excel有上百个),能不能用python处理呢?答案是必须的!

思路分享:

  • 首先将excel的后缀名“.xlsx”修改为“.zip”格式。如下:
97c9f8202521d786a902d41ee4352d5e.png
  • 解压文件,在解压后的文件夹下的xlmedia下就是excel文件中的所有图片,格式为“.jpeg”。对每张图片进行循环(剪裁)。在完成剪裁后按照原来的图片名称进行命名,再将“.zip”后缀改为“.xlsx后缀即可”。打开后就是我们要的最终剪裁好图片的excel报告文件。如下:
2bab3e1e30905c490a8412d034e388fb.png
  • 我用的是pycharm2019.3.1( python3.7.1)进行编写代码,用到的模块有:

zipfile(用于压缩解压缩文件);

datetime(计时程序运行时间);

shutil(删除文件夹,主要是删除压缩的原文件夹);

os (系统路径);

PIL (图片处理);

  • 接下来附上部分源码:

导入模块

ad43b1e87f35f5d4fdc6da3213105fa1.png

读取excel文件以及删除解压后无用的文件夹(可循环读取多个excel文件)

b3728ef8e261e356c1c660633da9d4e4.png

解压缩文件

a491af0b61283f3c6362affa4ea97bd0.png
079f39844f7627ad5d6707f35602dcf0.png

图片处理

b55977d7bfd6a05d825709195d2ddd8e.png

这里对每张图片的顶部8%去除

压缩文件

f0ec9b79623802dbadb5378a1836203f.png

处理好的excel中的每张图片都按照要求进行剪裁(按照像素删除顶部的8%)大大节省了项目组的人工机械劳动力。而且在还原后的excel中的图片位置以及其他数据均没有任何改变,与原效果一致。

如下:

a389181c5c3b9cc3d375a4fef2dfde34.png

excel中处理后图片(剪切去除顶部8%部分)

5d973a04030b176148a87a2693ec9a2e.png

excel中原图片

代码也可打包成在windows平台运行的.exe文件,方便同事分享使用。

以上均为年丰时稔原创,有想要全部代码的小伙伴请私信吧,谢谢,转发、评论、点赞!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值