2010-12-04 3 views
3

일부 (Excel 2000) 통합 문서가 있습니다. 개별 워크 시트의 데이터를 별도의 파일로 추출하려고합니다.파이썬에서 Excel 파일을 읽는 크로스 플랫폼 방식?

저는 Linux에서 실행됩니다.

Python에서 Linux의 XLS 파일에 액세스 (읽기) 할 수있는 라이브러리가 있습니까?

+0

은 엑셀 스프레드 시트를 언제나 파이썬에서 쉽게 구문 분석 할 수있는 CSV 형식으로 내보낼 수 있습니다. – cristobalito

+5

http://www.python-excel.org/을 보셨습니까? –

+0

또는 XML로 저장하고 XML 구문 분석기를 사용하십시오. – khachik

답변

7

http://www.lexicon.net/sjmachin/xlrd.htm이 도움이 될 수 있습니다.

+0

+1 : xlrd는 항상 나를 위해 완벽하게 작동했습니다. 불행히도 최신 Excel 형식은 읽지 않습니다. – EOL

+2

@EOL : Excel 2007 xls [xm] 파일을 읽는 "알파"버전의 코드는 심각한 테스터에게 전자 메일로 요청할 수 있습니다. 그냥 물어봐. –

0

가장 쉬운 방법은 Wine 또는 VM에서 Excel을 실행하고 Windows에서 실행하는 것입니다. ActiveState Python에 번들 된 Mark Hammond의 COM 바인딩을 사용할 수 있습니다. 또는 CSV 형식으로 데이터를 내보내고 그 데이터를 읽을 수 있습니다.

+0

win32 COM + Excel이'xlrd'보다 쉬울 것이라는 당신의 이유에 관심이 있습니다. –

+0

명명 된 범위와 전체 Excel API에 액세스 할 수 있습니다. 나는 xlrd를 사용했고 셀 단위로 꽤 많은 셀을 사용했다. 한 번에 전체 시트를 가져 와서 API를 통해 한꺼번에 처리 할 수 ​​있습니다. – ConcernedOfTunbridgeWells

+2

xlrd는 명명 된 범위에 대한 액세스를 제공합니다. OP는 Linux에 있으며 데이터를 추출하려고합니다 (xlrd는 행 단위 액세스를 제공합니다). 그는 "전체 Excel API"와 Windows 호환 환경을 설정하는 전체 오버 헤드를 필요로하지 않으며 라이센스가있는 Excel 복사본이 없거나 필요하지 않습니다. –

-1

나는 이런 목적으로 좋은 결과를 얻기 위해 pyexcelerator을 사용 해왔다.

+0

그리고 예, 스프레드 시트 구문 분석은 주로 리눅스에서 이루어졌습니다 –

+1

현재 xlrd 및 xlwt 라이브러리에서 더 잘 수행됩니다. AFAIK pyexcelerator는 더이상 유지되지 않습니다 – joaquin

+0

-1 pyExcelerator 및 abandonware (sourceforge의 버그 추적기를 확인하십시오). 그것의 xls 독서 구성 요소는 최소한의 기능을 가지고 있습니다. –

3

from PyPI. 또한 the python-excel website으로 이동하여 (a) 자습서 (b) 토론 그룹 (c) xlwtxlutils에 대해 알아보십시오.

[Dis] claimer : 관리자 &의 관리자가 xlrd이고 관리자가 xlwt (버그가 수정되고 수많은 개선 된 pyExcelerator의 포크)입니다.