使用Python从Excel(.xlsx)提取超链接

我一直在寻找用于Excel文件操作的xlrd和openpyxl库。但是,xlrd当前不支持formatting_info=True.xlsx文件,因此我无法使用xlrdhyperlink_map函数。因此我转向openpyxl,但也没有运气从它中的excel文件中提取超链接。下面的测试代码(测试文件包含指向google的简单超链接,并将超链接文本设置为“测试”):

import openpyxl

wb = openpyxl.load_workbook('testFile.xlsx')

ws = wb.get_sheet_by_name('Sheet1')

r = 0

c = 0

print ws.cell(row = r, column = c). value

print ws.cell(row = r, column = c). hyperlink

print ws.cell(row = r, column = c). hyperlink_rel_id

输出:

test

None

我猜openpyxl当前不完全支持格式化吗?我还可以使用其他一些库从Excel(.xlsx)文件中提取超链接信息吗?

回答:

以我的经验,要获得良好的.xlsx交互,需要转向IronPython。这使您可以使用公共语言运行时(clr)并直接与excel’进行交互

http://ironpython.net/

import clr

clr.AddReference("Microsoft.Office.Interop.Excel")

import Microsoft.Office.Interop.Excel as Excel

excel = Excel.ApplicationClass()

wb = excel.Workbooks.Open('testFile.xlsx')

ws = wb.Worksheets['Sheet1']

address = ws.Cells(row, col).Hyperlinks.Item(1).Address

以上是 使用Python从Excel(.xlsx)提取超链接 的全部内容, 来源链接: utcz.com/qa/402595.html

回到顶部