#python #python_3x #парсер #excel #python_2x
Как парсить Excel файл с помощью Python и взять данные именно с нужных столбцов?
Ответы
Ответ 1
Пример с использованием модуля Pandas: import pandas as pd # pip install pandas df = pd.read_excel(r'D:\download\1.xls', sheet_name='Лист1') print(df) вывод: Артикул Наименование Тариф (прайс) на 12.06.83 0 а123 Товар А 100 1 б123 Товар Б 200 2 в123 Товар В 300 в виде обычных Vanilla Python списков или Numpy Array: In [20]: df['Артикул'].tolist() Out[20]: ['а123', 'б123', 'в123'] In [21]: df.values Out[21]: array([['а123', 'Товар А', 100], ['б123', 'Товар Б', 200], ['в123', 'Товар В', 300]], dtype=object) In [22]: df.values.tolist() Out[22]: [['а123', 'Товар А', 100], ['б123', 'Товар Б', 200], ['в123', 'Товар В', 300]] In [23]: df.T.values.tolist() Out[23]: [['а123', 'б123', 'в123'], ['Товар А', 'Товар Б', 'Товар В'], [100, 200, 300]] PS Pandas поддерживает работу с XLSX и XLS форматами и умеет использовать следующие модули: xlrd, xlwt openpyxl xlsxwriterОтвет 2
Вот эта библиотека решит ваши вопросы: openpyxl Вот пример кода, как можно работать с xlsx from openpyxl import load_workbook workbook = load_workbook('/tmp/data.xlsx', use_iterators=True) first_sheet = workbook.get_sheet_names()[0] worksheet = workbook.get_sheet_by_name(first_sheet) for row in worksheet.iter_rows(): print row # check out the last row for cell in row: print cell Там же вы сможете найти полный tutorial как ей пользоваться и как читать нужные страницы и ячейки.
Комментариев нет:
Отправить комментарий