首页 > 解决方案 > 如何在 pandas 中处理带有超链接/url 的 excel 文件?

问题描述

我有一个 excel 文件,其中有一列填充了超链接,我使用它读取它,df = pd.read_excel()然后对其进行过滤并将其保存到一个新的 excel 文件中df.to_excel()

问题是我现在丢失了可点击的超链接,而是只有文本(不是超链接)

我可以为此使用熊猫吗?还是我应该使用其他库?

标签: pythonpython-3.xexcelpandashyperlink

解决方案


您可以使用该import xlsxwriter库添加超链接。说到超链接,这里的示例显示了一些示例,例如:

worksheet.write_url('A5', 'http://www.python.org/', tip='Click here')

但是,如果您不想为每个单元格手动编写一行代码,那么如果您有所有超链接的列表,则可以循环并动态添加超链接。

hyperlinks = ['a.com', 'b.com', 'c.com' ... etc.]

for i in range(1, len(hyperlinks)):
    worksheet.write_url(f'A{i}', hyperlinks[i-1], tip=df['column string'][i-1])

您的超链接显然必须在 中以正确的顺序排列list,或者您可以创建一个dictionary使文本和超链接成为键值对并用于.map将超链接作为列引入数据框的方法。然后您可以对值进行排序并将超链接发送到带有hyperlinks = df['hyperlink'].to_list(). 然后你可以运行for循环。

但是,我认为您必须先创建一个列表或字典。


另外,请查看此答案以使用以下超链接阅读日期openpyxl

带有超链接的 Pandas read_excel

而且,这用于使用超链接写入数据pandas

将超链接添加到由 pandas 数据框 to_excel 方法创建的 excel 工作表


推荐阅读