2015-03-01 5 views
0

Мне нужно автоматизировать некоторые операции с MS Office, такие как открытие, редактирование, сохранение файла Excel или Word. Я знаю, что это можно сделать с помощью библиотек win32com. Я смог успешно запустить эти сценарии с моей машины Windows, где находится сценарий, но я не могу запустить их в сеансе telnet на той же машине Windows.автоматизация офиса python по telnet

File "C:\Python27\Lib\site-packages\etest\a8n\msoffice.py", line 216, in <module> 
    d.save_as('test') 
File "C:\Python27\Lib\site-packages\etest\a8n\msoffice.py", line 152, in save_as 
    self._workbook.SaveAs(filename) 
File "<COMObject <unknown>>", line 7, in SaveAs 
pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, u'Microsoft Office Excel', u'SaveAs method of Workbook class failed', u'C:\\Program Files (x86)\\Microsoft Office\\Office12\\1033\\XLMAIN11.CHM', 0, -2146827284), None) 

Это ограничение? Или вы думаете, что в моем скрипте может быть ошибка?

Если это ограничение, есть ли способ автоматизировать операции Office и запускать его через telnet или сеанс ssh?

Спасибо,

Meghana

UPDATE:

Я попытался просто открыть лист первенствовать, и я получил эту ошибку,

pywintypes.com_error: (-2147352567, 'Exception occurred.', (0, u'Microsoft Office Excel', u"Microsoft Office Excel cannot access the file 'C:\\test.xlsx'. There are several possible reasons:\n\n\u2022 The file name or path does not exist.\n\u2022 The file is being used by another program.\n\u2022 The workbook you are trying to save has the same name as a currently open workbook.", u'C:\\Program Files (x86)\\Microsoft Office\\Office12\\1033\\XLMAIN11.CHM', 0, -2146827284), None) 

Но файл не был открыт и не использовалась ни одной программой.

ответ

1

Мое предположение (никогда не пробовали то, что вы пытаетесь), - это то, что при работе с telnet в PATH или (более вероятно) «рабочая папка» не совпадает с при входе в систему. Попробуйте использовать абсолютный путь для имени файла. Также убедитесь, что вы вошли в систему, используя ту же учетную запись, что и для telnet, и для рабочего стола, поскольку это влияет на права на запись.

Также возможно отсутствие рабочего стола имеет какое-то отношение к нему. Попробуйте установить видимость на false, хотя это, похоже, не является достаточным.

+0

Спасибо за ответ. Я попробовал снова, указав полный путь. На этот раз это тоже не сработало. – user2511458

+0

Хорошо знать. Я добавил еще одну возможность проверить. – Schollii

+0

Я установил видимость для False. Он по-прежнему показывает те же ошибки. Почему он отображает эти «C: \\ Program Files (x86) \\ Microsoft Office \\ Office12 \\ 1033 \\ XLMAIN11.CHM'' в трассировке? Его файл справки, но я не могу его открыть. Говорит, что «невозможно открыть файл». – user2511458

Смежные вопросы