Python 2.7 с pyuno

У меня в Windows 7 установлен python 2.7. Я установил Libre Office 3.4, который поставляется с python 2.6. Следовательно, я не могу импортировать uno и unohelper даже после установки всех переменных среды.

Мне нужен python 2.7, поэтому я не могу вернуться к python 2.6, так как раньше у меня был python 2.6, работающий с открытым офисом 3. Недавно я перешел на LibreOffice 3.4 и Python 2.7 (ActivePython 2.7).

Есть ли способ заставить python 2.7 импортировать uno и unohelper из LibreOffice 3.4?

Заранее спасибо.


person PyBegginer    schedule 14.10.2011    source источник


Ответы (3)


.pyc файлы и расширения C несовместимы между версиями Python 2.6 и 2.7. Установите pylauncher и используйте python2.6 shebang в скриптах, которые работают с Libre Office.

Из приведенной в ответе ссылки на разработку OpenOffice.org с помощью pyUno ​​для Windows —Какой Python? вопрос:

Термины: назовем версию Python, установленную вместе с OpenOffice, «OO-Python». Назовем версию Python, установленную отдельно (например, в c: \ Python26), «System-Python».

Вам нужно знать ШЕСТЬ вещей, чтобы успешно импортировать модуль uno в ваш интерпретатор System-Python. 1) Номер версии OO-Python. Номер вашей версии System-Python должен совпадать с номером версии OO-Python. [выделено мной] ...

person jfs    schedule 14.10.2011
comment
В моей системе не установлен Python2.6, поэтому я попытался указать путь к python.exe, присутствующему в LibreOffice 3.4, как C: \ Program Files (x86) \ LibreOffice 3.4 \ program \ python.exe. Я не знаю, является ли то, что я пытаюсь, правильным или нет, и является ли этот способ предоставления исполняемой версии Python, необходимой для моего сценария, правильным или нет. - person PyBegginer; 18.10.2011
comment
@PyBegginer: если версии Python System и LibreOffice различаются, вы не сможете запустить код, который использует pyuno, установленный вместе с LibreOffice, с вашим системным python. Это не мешает вам запускать его с помощью питона по указанному вами пути. pylauncher позволяет запускать сценарии без указания версии Python каждый раз (вы делаете это один раз внутри сценария в строке '#!'). Просмотрите скринкаст. - person jfs; 18.10.2011

ubuntu 13.10 и новее, вам необходимо установить openoffice 4.1.1.

  1. удалить libreoffice и openoffice

    sudo apt-get remove libreoffice* openoffice*
    sudo apt-get autoremove
    
  2. установить Apache OpenOffice 4.1.1 на 64-битную Ubuntu

    wget sourceforge.net/projects/openofficeorg.mirror/files/4.1.1/binaries/en-GB/Apache_OpenOffice_4.1.1_Linux_x86-64_install-deb_en-GB.tar.gz
    tar -xzvf Apache_OpenOffice_4.1.1_Linux_x86-64_install-deb_en-GB.tar.gz
    cd en-GB/DEBS
    sudo dpkg -i *.deb
    cd desktop-integration
    sudo dpkg -i *.deb
    
  3. установить Apache OpenOffice 4.1.1 на 32-битный Ubuntu

    wget sourceforge.net/projects/openofficeorg.mirror/files/4.1.1/binaries/en-GB/Apache_OpenOffice_4.1.1_Linux_x86_install-deb_en-GB.tar.gz
    tar -xzvf Apache_OpenOffice_4.1.1_Linux_x86_install-deb_en-GB.tar.gz
    cd en-GB/DEBS
    sudo dpkg -i *.deb
    cd desktop-integration
    sudo dpkg -i *.deb
    
  4. коснитесь uno.pth для python2.7

    echo /opt/openoffice4/program |sudo tee /usr/lib/python2.7/dist-packages/uno.pth
    
person user1227312    schedule 16.01.2015

В ubuntu 14.04

откройте терминал и выполните следующую команду ...

sudo apt-get install libreoffice python-genshi python-cairo python-lxml python-setuptools
sudo apt-get install libreoffice-script-provider-python
easy_install uno
person Ankit    schedule 14.10.2016