Подтвердить что ты не робот

Анализ документов excel с помощью python

Я хочу проанализировать документ excel для списков в Python. Есть ли библиотека python, которая полезна для этого действия? И какие функции релевантны в этой библиотеке?

4b9b3361

Ответ 1

Лучше всего для анализа файлов Excel будет xlrd библиотека. На сайте python-excel.org есть ссылки и примеры для xlrd и связанные с ними библиотеки excel python, в том числе pdf-документ, в котором есть хорошие примеры использования xlrd. Конечно, в StackOverflow также может быть много связанных вопросов xlrd.

Одно из предостережений с библиотекой xlrd заключается в том, что оно будет работать только с форматами файлов xls (Excel 2003 и более ранние версии excel), а не с более последним форматом файла xlsx. Существует более новая библиотека openpyxl для работы с xlsx, но я никогда не использовал ее.

UPDATE: Согласно комментарию Джона, библиотека xlrd теперь поддерживает форматы файлов xls и xlsx.

Надеюсь, что это поможет.

Ответ 2

xlrd отлично подходит для простых задач, но если вам нужно работать с любой из более глубоких функциональных возможностей Excel (макросы, расширенные построения и т.д.), и вы работаете на машине Windows, вы можете использовать библиотеку pywin32 для управления win32com слой. Это обеспечивает доступ ко всему, что можно контролировать с помощью макросов /Visual Basic.

Ответ 3

openpyxl - отличная библиотека и поддерживает чтение/запись в 2010 xlsx файлы.

пример кода анализа

from openpyxl import load_workbook
wb = load_workbook('Book1.xlsx')
ws = wb.active
for row in ws.iter_rows():
   for cell in row:
     print cell.value

Ответ 4

pandas library имеет быстрый и простой способ прочитать excel. Если это в основном просто данные и ничего сложного, это сработает:

import pandas as pd
ex_data = pd.read_excel('excel_file.xlsx')

Он читает его в pandas DataFrame, который удобен для перехвата данных и т.д.

Чтобы перейти к списку:

ex_data['column1_name'].values.tolist()

Если у вас несколько таблиц и вещей на каждом листе, вы можете захотеть использовать другую библиотеку.

Ответ 5

Если вы хотите разобрать xlsx попробовать python-xlsx

Ответ 6

pyExcelerator, похоже, больше не поддерживается, но я использовал его довольно долгое время и мне очень понравилось Это.

Ключевые моменты:

  • Независимость от платформы
  • Не требуется установка Excel (это не означает, что COM-связь)

Обновить

Все мои новые проекты переместились в xlrd.