cómo hacer que csvkit convierta archivos xlsx muy anchos: mensajes de error extraños

cómo hacer que csvkit convierta archivos xlsx muy anchos: mensajes de error extraños

He estado intentando convertir varios archivos xlsx que son muy anchos (más de 200 columnas) en archivos csv para poder agregarlos en un solo archivo para su análisis. He estado intentando usar csvkit, pero simplemente se bloquea en los archivos.

El mensaje de error cuando activo el modo detallado varía cada vez que lo ejecuto. Aquí hay uno:

C:\_analysis>in2csv -v 85910332_PE20160101_RECLMEXP.xlsx > test.csv
c:\python35\lib\site-packages\openpyxl\workbook\names\named_range.py:121: UserWarning: Discarded range with reserved name
  warnings.warn("Discarded range with reserved name")
Traceback (most recent call last):
  File "C:\Python35\Scripts\in2csv-script.py", line 9, in <module>
    load_entry_point('csvkit==0.9.1', 'console_scripts', 'in2csv')()
  File "c:\python35\lib\site-packages\csvkit\utilities\in2csv.py", line 82, in launch_new_instance
    utility.main()
  File "c:\python35\lib\site-packages\csvkit\utilities\in2csv.py", line 76, in main
    data = convert.convert(self.input_file, filetype, **kwargs)
  File "c:\python35\lib\site-packages\csvkit\convert\__init__.py", line 39, in convert
    return xlsx2csv(f, **kwargs)
  File "c:\python35\lib\site-packages\csvkit\convert\xlsx.py", line 66, in xlsx2csv
    value = c.value
  File "c:\python35\lib\site-packages\openpyxl\cell\read_only.py", line 107, in value
    if self.data_type == 'b':
KeyboardInterrupt

Cuando lo ejecuté nuevamente, el error fue ligeramente diferente:

C:\_analysis>in2csv -v 85910332_PE20160101_RECLMEXP.xlsx > test.csv
c:\python35\lib\site-packages\openpyxl\workbook\names\named_range.py:121: UserWarning: Discarded range with reserved name
  warnings.warn("Discarded range with reserved name")
Traceback (most recent call last):
  File "C:\Python35\Scripts\in2csv-script.py", line 9, in <module>
    load_entry_point('csvkit==0.9.1', 'console_scripts', 'in2csv')()
  File "c:\python35\lib\site-packages\csvkit\utilities\in2csv.py", line 82, in launch_new_instance
    utility.main()
  File "c:\python35\lib\site-packages\csvkit\utilities\in2csv.py", line 76, in main
    data = convert.convert(self.input_file, filetype, **kwargs)
  File "c:\python35\lib\site-packages\csvkit\convert\__init__.py", line 39, in convert
    return xlsx2csv(f, **kwargs)
  File "c:\python35\lib\site-packages\csvkit\convert\xlsx.py", line 58, in xlsx2csv
    for i, row in enumerate(sheet.iter_rows()):
  File "c:\python35\lib\site-packages\openpyxl\worksheet\iter_worksheet.py", line 103, in get_squared_range
    for _event, element in p:
  File "c:\python35\lib\xml\etree\ElementTree.py", line 1290, in __next__
    for event in self._parser.read_events():
  File "c:\python35\lib\xml\etree\ElementTree.py", line 1257, in read_events
    index = self._index
KeyboardInterrupt

¿Algunas ideas?

Estoy ejecutando Windows 10, los archivos fuente están en Excel 2013, Python 3.5.1 y las siguientes versiones de la biblioteca csvkit==0.9.1 jdcal==1.2 numpy==1.10.2 openpyxl==2.2.0b1 python-dateutil ==2.2 seis==1.10.0 SQLAlchemy==1.0.13 xlrd==1.0.0

información relacionada