"""Excel批量到导出图片SS"""from pymysql import TIMEimport win32com.clientimport timefrom datetime import datetimefrom PIL import Image, ImageGrabimport osimport win32guifrom win32gui import *import win32guiimport win32apidef open_table(): xlapp = win32com.client.Dispatch("excel.Application") # Excel xlapp = win32com.client.Dispatch("ket.Application") # WPS xlapp.Visible = 1 xlapp.DisplayAlerts = False ws = xlapp.ActiveSheet ws = xlapp.Worksheets('111') ws1 = xlapp.Worksheets.Add() # 添加 Sheet xlScreen, xlPrinter = 1, 2 xlPicture, xlBitmap = -4147, 2 for i in range(1,3): print(i) range01 = "A"+str(i) ws.Range(range01).Copy() # 复制单元格 ws1.paste for aaa in ws1.Shapes: aaa.ScaleHeight( 1, 1) aaa.ScaleWidth( 1, 1) for i11 in range(10): try: print(i11) aaa.CopyPicture(xlScreen, xlBitmap) break except Exception as e: time.sleep(0.5) print(e) aaa.Delete() save_pic(str(i)) clear_clipboard()def clear_clipboard(): from ctypes import windll if windll.user32.OpenClipboard(None): # 打开剪切板 windll.user32.EmptyClipboard() # 清空剪切板 windll.user32.CloseClipboard() # 关闭剪切板def save_pic(filename): for i in range(10): try: # time.sleep(0.3) # 图片过大,打开剪贴板过快 # OSError: failed to open clipboard print("获取剪贴板次数:"+str(i)) im = ImageGrab.grabclipboard() break except Exception as e: time.sleep(0.5) print(e) a01 = 0 print(im.size) filepath = r'C:\\Users\\ch\\Downloads\\SA8D9FS8AD90FSAD890F\\'+filename+'.png' im.save(filepath)if __name__ == '__main__': open_table()