Python CFFI wrapper for LibreOfficeKit
Project description
A python CFFI wrapper for LibreOfficeKit. Tested in cpython2, cpython3, and pypy.
Requirements
An installation of LibreOffice >= 4.3.0 is required on the same machine.
If you are using cpython you need libffi-dev in order to compile CFFI.
Installation
pip install pylokit
Examples
A basic conversion from a rtf file to a doc:
from pylokit import Office
import os
lo_path = "/path/to/libreoffice/program/dir"
with Office(lo_path) as lo:
with lo.documentLoad("myfile.rtf") as doc:
doc.saveAs("myfile.doc")
os._exit(0)
Same conversion passing an explicit format and filter options:
from pylokit import Office
import os
lo_path = "/path/to/libreoffice/program/dir"
with Office(lo_path) as lo:
with lo.documentLoad("myfile.rtf") as doc:
doc.saveAs("myfile.doc", fmt="docx", options="skipImages")
os._exit(0)
The usage of a context manager is needed to properly handle LibreOfficeKit file locking. The use of _exit() instead of default exit() is required because in some circumstances LibreOffice segfaults on process exit.
Acknowledgements
Project inspired by Olly Betts’ lloconv.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file pylokit-0.8.1.tar.gz
.
File metadata
- Download URL: pylokit-0.8.1.tar.gz
- Upload date:
- Size: 11.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 11346e35cfaf661bf2865a2c0e02f12fd5fbfd07e2b1bff7e7ccbff32e749379 |
|
MD5 | b63c38b5b505bacc032c9b5c072bee3c |
|
BLAKE2b-256 | a205b0e1db3fc82d9dd4fa7701adde4b8ba83b71a72a01668b168b98ab5e7ad4 |