检索 Excel 工作簿连接属性

Retrieve Excel Workbook Connection Properties

我正在尝试使用 python 从 Excel 文件中的连接 属性 window 获取 "Command Text"。但是,我找不到包含此信息的对象。在下图中,我想将突出显示的 EXEC sp_FooBar 检索为字符串:

我能够通过以下方式检索连接 names

import odbc
import win32com.client
file = r'PATH_TO_FILE'
xl = win32com.client.DispatchEx('Excel.Application')
wb = xl.workbooks.open(file)
for x in wb.connections:
    print(x)

但我不确定如何进一步使用 <COMObject <unknown>> 对象来获取命令文本。我在想 win32com 可能有一些东西,但似乎无法破解密码。

您可以像这样从 OLEDBConnection 实例中获取 CommandText 属性:

import odbc
import win32com.client

file = r'PATH_TO_FILE'
xl = win32com.client.DispatchEx('Excel.Application')
wb = xl.workbooks.open(file)
for x in wb.Connections:
    print(x.OLEDBConnection.CommandText)
xl.Application.Quit()