相关疑难解决方法(0)

Python:从Office/Excel文档访问嵌入式OLE而不使用剪贴板

我想使用Python从Office/Excel文档中添加和提取文件.到目前为止添加东西很容易但是为了提取我还没有找到一个干净的解决方案.

为了清楚我已经得到了什么,我没有写下下面的小例子test.py并进一步解释.

test.py

import win32com.client as win32
import os 
from tkinter import messagebox
import win32clipboard

# (0) Setup
dir_path = os.path.dirname(os.path.realpath(__file__))
print(dir_path)
excel = win32.gencache.EnsureDispatch('Excel.Application')
wb = excel.Workbooks.Open(dir_path + "\\" + "test_excel.xlsx")
ws = wb.Worksheets.Item(1)
objs = ws.OLEObjects()

# (1) Embed file
f = dir_path + "\\" + "test_txt.txt"
name = "test_txt_ole.txt"
objs.Add( Filename=f, IconLabel=name )

# (2) Access embedded file
obj = objs.Item(1) # Get single OLE from OLE list
obj.Copy()
win32clipboard.OpenClipboard()
data = win32clipboard.GetClipboardData(0xC004) # Binary …
Run Code Online (Sandbox Code Playgroud)

python com excel ole ms-office

10
推荐指数
2
解决办法
3470
查看次数

标签 统计

com ×1

excel ×1

ms-office ×1

ole ×1

python ×1