linux的centos系统安装libreoffice

使用python将word的doc转换成docx的时候,需要借助libreoffice。下面来说说libreoffice的安装过程。

下载libreoffice的基础安装包

wget http://mirrors.ustc.edu.cn/tdf/libreoffice/stable/6.1.3/rpm/x86_64/LibreOffice_6.1.3_Linux_x86-64_rpm.tar.gz

解压安装包

tar -xvf LibreOffice_6.1.3_Linux_x86-64_rpm.tar.gz

安装基础程序

sudo yum install LibreOffice_6.1.3.2_Linux_x86-64_rpm/RPMS/*.rpm -y

下载中文语言包

wget http://mirrors.ustc.edu.cn/tdf/libreoffice/stable/6.1.3/rpm/x86_64/LibreOffice_6.1.3_Linux_x86-64_rpm_langpack_zh-CN.tar.gz

解压中文语言包

tar -xvf LibreOffice_6.1.3_Linux_x86-64_rpm_langpack_zh-CN.tar.gz

安装中文语言包

sudo yum install LibreOffice_6.1.3.2_Linux_x86-64_rpm_langpack_zh-CN/RPMS/*.rpm -y

安装相关依赖

sudo yum install libXinerama.x86_64 cups-libs dbus-glib ibus -y

如果有些依赖已经存在,就一个一个的装。像下面这样,我安装的时候主要缺下面两个依赖:

sudo yum install dbus-glib -y
sudo yum install ibus -y

查看是否成功

soffice --help

如果提示soffice不存在,则添加映射。我的libreoffice6.1安装在/opt/libreoffice6.1/program/soffice这个目录下。

whereis libreoffice6.1

找到自己的安装目录,然后映射。

sudo ln -s /opt/libreoffice6.1/program/soffice /usr/bin/soffice

python将doc转换成docx

安装成功之后就可以将doc转换成docx

import subprocess
output = subprocess.check_output(["soffice","--headless","--invisible","--convert-to","docx","test.doc","--outdir","./"])

使用python-docx读取文本

先安装docx包。

pip install python-docx

读取文本

import docx

def getText(filename):
    doc = docx.Document(filename)
    fullText = []
    for i in doc.paragraphs:#迭代docx文档里面的每一个段落
        fullText.append(i.text)#保存每一个段落的文本
    return '\n'.join(fullText)

print(getText('test.docx'))

你可能感兴趣的:(linux的centos系统安装libreoffice)