python - 如何在 pandas 中处理带有超链接/url 的 excel 文件?
问题描述
我有一个 excel 文件,其中有一列填充了超链接,我使用它读取它,df = pd.read_excel()
然后对其进行过滤并将其保存到一个新的 excel 文件中df.to_excel()
。
问题是我现在丢失了可点击的超链接,而是只有文本(不是超链接)
我可以为此使用熊猫吗?还是我应该使用其他库?
解决方案
您可以使用该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
:
推荐阅读
- r - 在点上使用 dplyr::recode
- javascript - 改变状态和重定向
- postgresql - 如果我已经使用 GIN 索引,如何优化查询
- javascript - 状态更新后 React useEffect 不会重新加载我的组件
- c++ - Rcpp 函数在打包时会导致 RStudio 崩溃
- c# - Linq过滤子类并返回父类?
- ibm-cloud - 无法在 bluemix 上为 cloudant db 创建凭证
- laravel - 如何连接 DocumentDB 和 Laravel
- c - 如何将更改写入结构单链表?
- python - 在多级关系的情况下,如何将 Django 模型对象/查询集作为字典获取?