python - Python - 将 Excel 中的范围复制为图像并粘贴到 Outlook 电子邮件的正文中
问题描述
我对 Python 很陌生 - 我在将 Excel 中的范围复制为图像并将该图像粘贴到 Outlook 电子邮件正文中时遇到问题。请在下面查看我的代码:
import win32com.client as win32
from PIL import ImageGrab
xlApp = win32.gencache.EnsureDispatch('Excel.Application')
wb = xlApp.Workbooks.Open('U:\Reporting\Templates\Daily_Update_Template_v3.xlsm')
ws = wb.Worksheets('Summary')
win32c = win32.constants
ws.Range(ws.Cells(1,1),ws.Cells(83,14)).CopyPicture(Format= win32c.xlBitmap)
img = ImageGrab.grabclipboard()
Message = 'Hello World!'
outlook = win32.Dispatch('outlook.application')
mail = outlook.CreateItem(0)
mail.To = 'email@blaaaaa.com'
mail.Subject = 'Test'
mail.Body = img
mail.Send()
当我运行脚本时,我收到以下错误:
TypeError:“DibImageFile”类型的对象无法转换为 COM VARIANT(但可以获取该对象的 buffer())
谁能帮我理解?谢谢!
解决方案
推荐阅读
- sql - 如何优化这些 SQL 连接?
- php - json_encode breaks on image url
- javascript - CORS 错误:通过 API Gateway 在 AWS Lambda 中为具有授权的自定义域设置 cookie
- reactjs - 过滤反应表数据中的格式化数据
- php - 结合两个 preg match 从 url 获取 viemo id 和 youtube id
- json - 如何从 Spotify Web API 中提取数据
- html - 转换后如何摆脱未使用的空间?
- python - 如何创建一个字典,其中键是词干,值是具有该词干的单词列表?
- javascript - 在 Parse-Server 中获取类中的所有键
- javafx - 使用 AdoptOpenJDK 和 OpenJFX 时出现以下错误。“初始化 QuantumRenderer 时出错:找不到合适的管道”