通过python脚本从excel获取绝对超链接

问题描述 投票:0回答:1

我正在使用

openpyxl
处理 Excel 电子表格中的信息。电子表格位于Microsoft共享点中,当添加一些超链接到其中时,如果超链接位于同一个共享点中,当我单击“保存”按钮时,它将自动转换为相对URL。

如果我将此电子表格复制到其他电脑位置,相关超链接根本无法工作。 Microsoft 在帮助>设置工作簿中链接的基址中提供了解决此问题的方法。但是对于

openpyxl
,似乎没有提供任何方法来检索这个
base url address

我不想在Python脚本中硬编码它,因为我需要处理不同的Excel表。 python脚本有没有办法将相对URL转换为绝对URL?或者,excel本身有没有办法避免以相对形式存储URL?

获取URL的代码片段如下

wb = load_workbook(file, data_only=True)
sheet = wb[sheet_name]

# Extract the hyperlinks
hyperlinks = {}
for row in sheet.iter_rows():
    for cell in row:
        if cell.hyperlink:
            hyperlinks[cell.coordinate] = cell.hyperlink.target  # here the link might be relative
python excel hyperlink openpyxl
1个回答
0
投票

结果设置基本超链接后,Excel 停止将 URL 转换为相对链接。所以这个问题可以结束了。

© www.soinside.com 2019 - 2024. All rights reserved.