openpyxl:从excel超链接openpyxlwindows环境返回绝对路径



我有一个excel文件,使用ctrl&k.我想最终检查链接是否存在,但目前,我需要获取文件的绝对路径,因为文件的位置经常会发生变化。

这导致excel文件中的超链接;file.pdf";或"..//file.pdf";

使用Openpyxl,我可以获取超链接目标:

import openpyxl
wb = openpyxl.load_workbook(r'C:samplesample.xlsx')
ws = wb['Index']
for row in ws.iter_rows():
try:
print( print(row[4].hyperlink.target))
p = Path(row[4].hyperlink.target).resolve() # does not resolve into "C:...."
print(str(p))
except:
pass

如何从超链接中获取绝对路径?

用abspath修复了它。。

import openpyxl
from os.path import abspath
wb = openpyxl.load_workbook(r'C:samplesample.xlsx')
ws = wb['Index']
for row in ws.iter_rows():
try:
print( print(row[4].hyperlink.target))
p = abspath(row[4].hyperlink.target) #"C:folderlink.pdf"
print(p)
except:
pass

最新更新