python读取execl里的图片

  • 正常的读取图片
from openpyxl import load_workbook
from PIL import Imagefrom openpyxl import load_workbook
wb = load_workbook(r'C:\Users\Administrator\Downloads\output1111.xlsx')
ws = wb[wb.sheetnames[0]]
for image in ws._images:data= image.anchor._fromif image.format=='gif':# 如果图片是GIF,则保存with open(f'C:\\Users\\Administrator\\Desktop\\hello\\row_{data.row}_col_{data.col}.gif', 'wb') as output_gif:output_gif.write(image._data())# 输出图片的位置信息if image.format=='png':with open(f'C:\\Users\\Administrator\\Desktop\\hello\\row_{data.row}_col_{data.col}.png', 'wb') as output_gif:output_gif.write(image._data())print(image.anchor._from)if image.format=='jpg':with open(f'C:\\Users\\Administrator\\Desktop\\hello\\row_{data.row}_col_{data.col}.jpg', 'wb') as output_gif:output_gif.write(image._data())print(image.anchor._from)
  • 优化更新后有多张图片
    在这里插入图片描述
from openpyxl import load_workbookwb = load_workbook(r'E:\odoo\odoo16\output1111.xlsx')
ws = wb[wb.sheetnames[0]]
i = 1def find_fially(picture_name, row_list):seq = int(picture_name.split('_')[1])picture_name = f'{name}_{seq + 1}'if picture_name in row_list:return find_fially(picture_name, row_list)return picture_namerow_list = []
for image in ws._images:data = image.anchor._fromname = ws.cell(row=data.row + 1, column=1)._valuepicture_name = f'{name}_{i}'if picture_name not in row_list:i = 1else:picture_name = find_fially(picture_name, row_list)row_list.append(picture_name)with open(f'E:\\{picture_name}.{image.format}', 'wb') as output_gif:output_gif.write(image._data())

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/740066.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深耕大屏营销领域的酷开科技,为品牌方带来更多的收益

互联网作为一种新的发展趋势,更是为我们提供了无数的机会和无限可能性,从电子商务时代到社交网络时代,价值文化也成为了品牌与消费者之间紧密联系的关键纽带。而在此背景下,OTT大屏拥有着独特的优势,作为OTT行业内的独…

数据库三大范式设计原则

数据库三大范式 第一范式(确保每列保持原子性) 第一范式是最基本的范式。如果数据库表中的所有字段值都是不可分解的原子值,就说明该数据库表满足了第一范式。 第二范式(确保表中的每列都和主键相关) 第二范式在第一范式的基础之上更进一层。第二范式需要确保数据…

第十节 JDBC事务

如果JDBC连接处于自动提交模式,默认情况下,则每个SQL语句在完成后都会提交到数据库。 对于简单的应用程序可能没有问题,但是有三个原因需要考虑是否关闭自动提交并管理自己的事务 - 提高性能保持业务流程的完整性使用分布式事务 事务能够控…

网络工程师——2024自学

一、怎样从零开始学习网络工程师 当今社会,人人离不开网络。整个IT互联网行业,最好入门的,网络工程师算是一个了。 什么是网络工程师呢,简单来说,就是互联网从设计、建设到运行和维护,都需要网络工程师来…

03在ESP-IDF中使用C++面向对象编程

在ESP-IDF中使用C和C进行混合编译 ESP-IDF是Espressif Systems开发的官方IoT开发框架,用于编程和开发ESP32系列的微控制器。虽然ESP-IDF主要使用C语言编写,但它也支持使用C进行开发 为什么要进行混合编译? C是一种功能强大的编程语言&…

Win11右键菜单恢复经典样式

一、使用Cmd恢复Windows 11上的经典上下文菜单 1.使用管理员权限打开Cmd 2.复制并粘贴以下代码,然后按enter键 reg.exe add "HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServer32" /f 二、使用Cmd恢复Windows 11上的默认…

Spring事务实现原理和工作原理

文章目录 Spring事务实现原理1. **事务管理器(Transaction Manager)**:2. **事务定义(Transaction Definition)**:3. **切面(Aspect)**:4. **代理对象(Proxy&…

web中实现一个账号同一时间只能由一个人使用

实现一个账号同一时间只能由一个人使用,通常需要在前端和后端同时进行控制。以下是一个基本的实现方案: 后端实现: 会话管理: 当用户登录时,生成一个唯一的会话标识(如Token或Session ID)。将该…

Java学习笔记(十五)IO流(二)

字符流 字符流其实就是字节流字符集,他在遇到相关的数据时会转变为相关的字节,例如遇到英文就转变为一个字节,遇到中文转变为三个字节 FileReader(读取数据类) 作用:纯文本文件-------->程序 将纯文…

【NR 定位】3GPP NR Positioning 5G定位标准解读(十五)-UL-TDOA 定位

前言 3GPP NR Positioning 5G定位标准:3GPP TS 38.305 V18 3GPP 标准网址:Directory Listing /ftp/ 【NR 定位】3GPP NR Positioning 5G定位标准解读(一)-CSDN博客 【NR 定位】3GPP NR Positioning 5G定位标准解读(…

Linux:时间指令 - cal date

Linux:时间指令 - cal & date date指令cal指令 date指令 date用于以指定格式显示时间 我们先看看直接输入date指令的效果: [hxyiZ2zehtehrgzt3wqccrpyfZ CSDN]$ date Tue Mar 12 21:38:01 CST 2024直接输入date指令,得到了以 星期 月 日…

C#,数值计算,解微分方程的龙格-库塔二阶方法与源代码

1 微分方程 含有导数或微分的方程称为微分方程,未知函数为一元函数的微分方程称为常微分方程。 微分方程的阶数 微分方程中导数或微分的最高阶数称为微分方程的阶数。 微分方程的解 使得微分方程成立的函数称为微分方程的解。 微分方程的特解 微分方程的不含任意常数的解称…

软考介绍的创新技术

本博客地址:https://security.blog.csdn.net/article/details/136632895 一. 信息物理系统 1、信息物理系统(CPS)通过集成先进的感知、计算、通信、控制等信息技术和自动控制技术,构建了物理空间与信息空间中人、机、物、环境、…

蚂蚁集团2025届暑期实习开始啦~

蚂蚁集团2025届暑期实习开始啦~欢迎大家投递信贷事业群-风险管理部的算法岗,找我内推哦~社招也有hc,欢迎大家沟通!

LeetCode 2129.将标题首字母大写:模拟(一个变量记录是否该大写)

【LetMeFly】2129.将标题首字母大写:模拟(一个变量记录是否该大写) 力扣题目链接:https://leetcode.cn/problems/capitalize-the-title/ 给你一个字符串 title ,它由单个空格连接一个或多个单词组成,每个…

STM32CubeIDE基础学习-STM32CubeIDE软件代码编写格式问题

STM32CubeIDE基础学习-STM32CubeIDE软件代码编写格式问题 前言 代码编写最好就是规定一个格式,或者建立一个偏好,这样写出来的代码就方便自己管理了,不然代码乱放下次打开工程就很难找到具体位置,如果规定了格式,那么…

Git 系列:简介安装以及配置管理

文章目录 简介安装简介Centos安装 配置管理[git help](https://www.git-scm.com/docs/git-help)概要选项示例git-doc [git config](https://www.git-scm.com/docs/git-config)概要选项变量示例 初始化配置 简介安装 简介 https://git-scm.com/ Git是一个开源的分布式版本控制…

软件测试知识面试题:测试计划关键、BUG流程、BUG描述、测试的整体覆盖率

文章目录 做好测试计划工作的关键是什么?公司的BUG流程是什么?如何提交一个好的bug?BUG描述包含哪些内容?讲述自己在项目中发现最有意义的一个 BUG,是什么导致出现这个问题?(例子)对…

Python 进行把图片转换为pdf

文章目录 Python 进行把图片转换为pdfPDF文件格式什么是PyMuPDF使用demo Python 进行把图片转换为pdf PDF文件格式 可移植文档格式(PDF)属于最常用的数据格式。在1990年,PDF文档的结构由Adobe定义。PDF格式的思想是,对于通信过程…

理论学习:Softmax层和全连接层 全连接层之前的数据

Softmax层和全连接层 Softmax层和全连接层在深度学习模型中通常是紧密相关的,经常一起使用。 全连接层(也称为线性层或密集连接层)是深度学习模型中常见的层之一,它将输入张量与权重矩阵相乘,并添加偏置项,…