Есть ли способ передать содержимое файла Excel, а не имя файла / ссылку, в функцию open_workbook () модуля xlrd? Я пытался использовать параметр file_contents для этой цели, но до сих пор не добился успеха. Спасибо.

4
Lamps1829 31 Янв 2013 в 19:11

2 ответа

Лучший ответ

В большинстве мест, где требуется открытый файл, также будет работать объект StringIO.

Вы просто создаете объект StringIO из данных файла и передаете этот объект в виде файла в вашу функцию.

1
Ber 31 Янв 2013 в 15:35

@ Бер комментарий правильный. Вам нужно будет использовать метод getvalue () объекта StringIO и передать его параметру file_content в вызове функции.

f = StringIO.StringIO(content)
book = xlrd.open_workbook(file_contents = f.getvalue() )
0
David 17 Май 2017 в 17:07