python-从excel中提取图表,导出图片

python-从excel中提取图表,导出图片

from win32com.client import Dispatch
import os
import logging
import traceback
import sys

"""
从excel中提取图表,生成图片
"""

def excelChart(workbook_file_name):
    """


    :param workbook_file_name:
    :param dataFormat: 需要格式化的数据
    :return:
    """


    # workbook_file_name = r'D:\pythonworkspace\develop\DCU\prime\scan\analyse\data.xlsx'
    try:
        app = Dispatch("Excel.Application")
        workbook = app.Workbooks.Open(Filename=workbook_file_name)
        app.DisplayAlerts = False
        imageList = []
        for sheet in workbook.Worksheets:
            for chartObject in sheet.ChartObjects():
                imagePath = os.path.abspath("./image")
                if not os.path.exists(imagePath):
                    os.makedirs(imagePath)
                imageFilePath = f"{os.path.join(imagePath, sheet.Name+'.png')}"
                chartObject.Chart.Export(imageFilePath)
                imageList.append(imageFilePath)
        return imageList
    except Exception as er:
        logging.error(f"** Meet exception ** :{er}")
        logging.error("".join(traceback.format_exception(*sys.exc_info())))
    finally:
        workbook.Close(SaveChanges=True, Filename=workbook_file_name)
  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值