Lazulitecn 2021-08-24 11:45 采纳率: 84.8%
浏览 533
已结题

Python为什么PIL保存excel单元格截图是纯黑色的呀?


# 这个电脑打开就是全黑
#coding:utf-8
import win32com.client as win32
from PIL import ImageGrab

excel = win32.Dispatch('Excel.Application')
excel.Visible = False
excel.DisplayAlerts = False
wb = excel.Workbooks.Open('结果输出-2021-08-24.xls')
ws = wb.Worksheets('统计') 
ws.Range('A1:B7').CopyPicture()
ws.Paste()
pic = ws.pictures[0]
pic.Copy()
img = ImageGrab.grabclipboard()
if img.mode == "P":
    img = img.convert('RGB')
else:
    pass
img.save('pic1.jpeg')


#  如果直接保存png,电脑打开预览是正常的,但发送微信消息图片是全黑的
pic.Copy()
img = ImageGrab.grabclipboard()
img.save('pic1.png')

PIL截图excel单元格,为什么保存后全黑呢?如下图只看到了excel一点点边框
img

  • 写回答

2条回答 默认 最新

  • IT_心如止水 2021-08-24 17:39
    关注

    首先,如楼上所说,需要先确保你的文件路径是绝对目录,
    不过,既然能生成图片文件,你的文件路径应该没有问题。
    你上述的情况出现,我分析:
    你的excel文件是默认背景,这个背景颜色并不是白色,而是透明色,所以你的图片看起来是黑的。
    建议,你更改excel背景色,然后检查单元格区域ws.Range('A1:B7').CopyPicture(),确保这个范围有内容,
    之后再运行,应该就没问题了!望采纳

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月1日
  • 已采纳回答 8月24日
  • 修改了问题 8月24日
  • 修改了问题 8月24日
  • 展开全部

悬赏问题

  • ¥15 PADS Logic 原理图
  • ¥15 PADS Logic 图标
  • ¥15 电脑和power bi环境都是英文如何将日期层次结构转换成英文
  • ¥20 气象站点数据求取中~
  • ¥15 如何获取APP内弹出的网址链接
  • ¥15 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了