Уведомления

Группа в Telegram: @pythonsu

#1 Фев. 13, 2011 22:19:01

diego
От:
Зарегистрирован: 2010-09-14
Сообщения: 78
Репутация: +  0  -
Профиль   Отправить e-mail  

win32com

Добрый день

Решил поковырять библиотеку win32com на предмет работы с excel

from win32com.client.dynamic import Dispatch
o = Dispatch("Excel.Application")
o.Workbooks.Open("C:/data.xls")
но получаю вот такую ошибку
[Window Title]
Error

[Content]
com_error: (-2147352567, '\xce\xf8\xe8\xe1\xea\xe0.', (0, u'Microsoft Excel', u'\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043d\u0430\u0439\u0442\u0438 "C:/data.xls". \u041f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0432\u0432\u043e\u0434\u0430 \u0438\u043c\u0435\u043d\u0438 \u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u0430.\n\n\u041f\u0440\u0438 \u043f\u043e\u043f\u044b\u0442\u043a\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f \u0444\u0430\u0439\u043b\u0430 \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430 \u043d\u0435\u0434\u0430\u0432\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0444\u0430\u0439\u043b \u043d\u0435 \u0431\u044b\u043b \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d, \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d \u0438\u043b\u0438 \u0443\u0434\u0430\u043b\u0435\u043d.', u'xlmain11.chm', 0, -2146827284), None)

[OK]
не подскажите что это

office 2007, пробовал и на win7 и на xp



Офлайн

#2 Фев. 13, 2011 22:53:11

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

win32com

А прочитать ошибку не пробовали?
У меня получилось:

Не удалось найти “C:/data.xls”. Проверьте правильность ввода имени и расположения файла.

При попытке открытия файла из списка недавно использованных файлов убедитесь, что файл не был переименован, перемещен или удален.



Офлайн

#3 Фев. 15, 2011 12:37:03

diego
От:
Зарегистрирован: 2010-09-14
Сообщения: 78
Репутация: +  0  -
Профиль   Отправить e-mail  

win32com

Андрей Светлов
А прочитать ошибку не пробовали?
У меня получилось:

Не удалось найти “C:/data.xls”. Проверьте правильность ввода имени и расположения файла.

При попытке открытия файла из списка недавно использованных файлов убедитесь, что файл не был переименован, перемещен или удален.
Спасибо, ошибку исправил - поделись чем кодировал?



Офлайн

#4 Фев. 15, 2011 12:44:53

Андрей Светлов
От:
Зарегистрирован: 2007-05-15
Сообщения: 3137
Репутация: +  14  -
Профиль   Адрес электронной почты  

win32com

>>> u = u'\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043d\u0430\u0439\u0442\u0438 "C:/data.xls". \u041f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u043f\u04
40\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0432\u0432\u043e\u0434\u0430 \u0438\u043c\u0435\u043d\u0438 \u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0
436\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u0430.\n\n\u041f\u0440\u0438 \u043f\u043e\u043f\u044b\u0442\u043a\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f \u0
444\u0430\u0439\u043b\u0430 \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430 \u043d\u0435\u0434\u0430\u0432\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u
0430\u043d\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0444\u0430\u0439\u043b \u043d\u043
5 \u0431\u044b\u043b \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d, \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d \u0438\u043b\u0438 \u0443\u
0434\u0430\u043b\u0435\u043d.'
>>> print u
Не удалось найти "C:/data.xls". Проверьте правильность ввода имени и расположения файла.

При попытке открытия файла из списка недавно использованных файлов убедитесь, что файл не был переименован, перемещен или удален.
>>> print u.encode('utf-8')
Не удалось найти "C:/data.xls". Проверьте правильность ввода имени и расположения файла.

При попытке открытия файла из списка недавно использованных файлов убедитесь, что файл не был переименован, перемещен или удален.
>>>
У меня линукс, кодировка по умолчанию utf-8.
На Windows нужно исправить на cp1251 для GUI и cp866 для консоли, если ничего не путаю



Офлайн

#5 Фев. 16, 2011 23:44:51

diego
От:
Зарегистрирован: 2010-09-14
Сообщения: 78
Репутация: +  0  -
Профиль   Отправить e-mail  

win32com

Андрей Светлов
>>> u = u'\u041d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043d\u0430\u0439\u0442\u0438 "C:/data.xls". \u041f\u0440\u043e\u0432\u0435\u0440\u044c\u0442\u0435 \u043f\u04
40\u0430\u0432\u0438\u043b\u044c\u043d\u043e\u0441\u0442\u044c \u0432\u0432\u043e\u0434\u0430 \u0438\u043c\u0435\u043d\u0438 \u0438 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0
436\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u0430.\n\n\u041f\u0440\u0438 \u043f\u043e\u043f\u044b\u0442\u043a\u0435 \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u044f \u0
444\u0430\u0439\u043b\u0430 \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430 \u043d\u0435\u0434\u0430\u0432\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u
0430\u043d\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 \u0443\u0431\u0435\u0434\u0438\u0442\u0435\u0441\u044c, \u0447\u0442\u043e \u0444\u0430\u0439\u043b \u043d\u043
5 \u0431\u044b\u043b \u043f\u0435\u0440\u0435\u0438\u043c\u0435\u043d\u043e\u0432\u0430\u043d, \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d \u0438\u043b\u0438 \u0443\u
0434\u0430\u043b\u0435\u043d.'
>>> print u
Не удалось найти "C:/data.xls". Проверьте правильность ввода имени и расположения файла.

При попытке открытия файла из списка недавно использованных файлов убедитесь, что файл не был переименован, перемещен или удален.
>>> print u.encode('utf-8')
Не удалось найти "C:/data.xls". Проверьте правильность ввода имени и расположения файла.

При попытке открытия файла из списка недавно использованных файлов убедитесь, что файл не был переименован, перемещен или удален.
>>>
У меня линукс, кодировка по умолчанию utf-8.
На Windows нужно исправить на cp1251 для GUI и cp866 для консоли, если ничего не путаю
Всё как всегда просто - спасибо!



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version