[英]Retain hyperlinks in Pandas - Excel to dataframe
我有一個大型excel文件,其中包含幾張我需要轉換為HTML的數據。 我很高興嘗試Pandas來幫助簡化轉換,並保持將Excel表格保存為HTML,然后花一整天時間刪除所有可怕的MS標簽。
我能夠讀取Excel文件+工作表,然后將它們作為數據框加載。 唯一的問題是它正在剝離單元格中的所有超鏈接。 我看了一遍,但找不到保留超鏈接的答案。 這是我第一次使用熊貓,所以它可能只是缺乏經驗。 下面是我的代碼和輸出的屏幕截圖。 謝謝您的幫助。
In [2]: import pandas as pd
In [3]: xls_file = pd.ExcelFile('Desktop/cfec-temp/blackbook/blackbook.xlsx')
In [4]: xls_file
Out[4]: <pandas.io.excel.ExcelFile at 0x1132ce4e0>
In [5]: xls_file.sheet_names
Out[5]: ['Sheet1', 'Sheet2', 'Sheet3', 'Sheet4', 'Sheet5', 'Sheet6', 'Sheet7']
In [6]: df = xls_file.parse('Sheet1')
In [7]: df
我要做的是使用openpyxl來獲取超鏈接,然后遍歷for循環中的行,創建超鏈接列表,並在pandas數據幀中添加一個新列:
import openpxyl
import pandas as pd
df = pd.read_excel('file.xlsm')
wb = openpyxl.load_workbook('yourfile.xlsm')
ws = wb.get_sheet_by_name('Sheet1')
print(ws.cell(row=2, column=1).hyperlink.target)
links = []
for i in range(2, ws.max_row + 1): # 2nd arg in range() not inclusive, so add 1
links.append(ws.cell(row=i, column=1).hyperlink.target)
df['link'] = links
與我在另一個問題中回答的相同的第一位代碼
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.