Получение URL гиперссылки из документа Excel
Я читаю файл Excel, используя xlrd. В одном столбце у меня есть название компании, которое отформатировано как гиперссылка (что означает, что за ним стоит URL-адрес). Когда я получаю значение ячейки, я получаю только название компании. Как я могу получить URL-адрес за ним?
Ниже приведен код для чтения файла Excel с использованием модуля xlrd (предполагается, что файлы импортированы).
mainData_book = xlrd.open_workbook("IEsummary.xls", formatting_info=True)
mainData_sheet = mainData_book.sheet_by_index(0) # Get the first sheet 0
start = 1
end = 101
for counter in range(start, end):
rowValues = mainData_sheet.row_values(counter, start_colx=0, end_colx=8)
company_name = rowValues[0] #how i can get link here also??
Ответы
Ответ 1
В xlrd 0.7.2 или новее вы можете использовать hyperlink_map
:
import xlrd
mainData_book = xlrd.open_workbook("IEsummary.xls", formatting_info=True)
mainData_sheet = mainData_book.sheet_by_index(0)
for row in range(1, 101):
rowValues = mainData_sheet.row_values(row, start_colx=0, end_colx=8)
company_name = rowValues[0]
link = mainData_sheet.hyperlink_map.get((row, 0))
url = '(No URL)' if link is None else link.url_or_path
print(company_name.ljust(20) + ': ' + url)