安装doctotext

1 安装GCC到4.6以上
tar jxf gcc-4.7.0.tar.bz2
cd gcc-4.7.0

编译
./contrib/download_prerequisites
mkdir build
cd build
../configure --disable-checking --disable-multilib --enable-languages=c,c++
make
make install

卸载旧版本
yum remove gcc
yum remove gcc-c++
updatedb

链接到新版本
[plain] view plaincopy
cd /usr/bin
ln -s /usr/local/gcc/bin/gcc gcc
ln -s /usr/local/gcc/bin/g++ g++

添加man帮助
vi /etc/man.config
添加gcc的man路径到配置文件中

MANPATH /usr/local/gcc/share/man
保存退出即可生效,可使用man gcc查看帮助

gcc安装过程错误排查列表
错误:
gnu/stubs-32.h:No such file or directory

解决方法:
yum install glibc-devel.i686

2 编译doctotext源码(只需要编译即可使用)
tar jxf doctotext-4.0-20140202.tar.bz2
cd doctotext
make

doctotext编译过程错误排查列表
错误:
../3rdparty/mimetic/lib/libmimetic.so: undefined reference to `std::__detail::_List_node_base::_M_unhook()@GLIBCXX_3.4.15'
../3rdparty/mimetic/lib/libmimetic.so: undefined reference to `std::__detail::_List_node_base::_M_hook(std::__detail::_List_node_base*)@GLIBCXX_3.4.15'
解决方法:
升级gcc到4.6以上

使用

编译完成后,在doc目录下面会说明实例的html页,下面例举里面的一个程序实例

#include "metadata.h"
#include "plain_text_extractor.h"

#include <iostream>
#include <string>

using namespace doctotext;

int main(int argc, char *argv[])
{
std::string file_name = "test.doc";
PlainTextExtractor extractor;
extractor.setVerboseLogging(true);
Metadata meta;
if (!extractor.extractMetadata(file_name, meta))
return 1;
std::cout << "Autor: " << meta.author() << std::endl;
std::cout << "Last modified by: " << meta.lastModifiedBy() << std::endl;
std::string text;
if (!extractor.processFile(file_name, text))
return 1;
std::cout << text << std::endl;
return 0;
}

编译测试源码

将上面的代码存储为main.cpp,由于doctotext编译完成后的动态库在doctotext/build目录下,并没有安装在系统目录下面,所以main.cpp也需要放在

doctotext/build目录下

编译链接测试源码

gcc main.cpp -L . -I. -ldoctotext

源码中指定了解析的文件名称test.doc,拷贝一个名为test.doc的文件到doctotext/build目录下

运行:

./a.out

即可解析文件

文件解析库doctotext安装和使用的更多相关文章

  1. 文件解析库doctotext源码分析

    doctotext中没有make install选项,make后生成可执行文件 在buile目录下面有.so动态库和头文件,需要的可以从这里面拷贝 build/doctotext就是可执行程序.   ...

  2. Beautiful Soup解析库的安装和使用

    Beautiful Soup是Python的一个HTML或XML的解析库,我们可以用它来方便地从网页中提取数据.它拥有强大的API和多样的解析方式.官方文档:https://www.crummy.co ...

  3. lxml解析库的安装和使用

    一.lxml的安装lxml是Python的一个解析库,支持HTML和XML的解析,支持XPath解析方式,而且解析效率非常高.本节中,我们了解一下lxml的安装方式,这主要从Windows.Linux ...

  4. Pyquery解析库的安装和使用

    Pyquery同样是一个强大的网页解析工具,它提供了和jQuery类似的语法来解析HTML文档,支持CSS选择器,使用非常方便.GitHub:https://github.com/gawel/pyqu ...

  5. ubuntu下的python网页解析库的安装——lxml, Beautiful Soup, pyquery, tesserocr

    lxml 的安装(xpath) pip3 install lxml 可能会缺少以下依赖: sudo apt-get install -y python3-dev build-e ssential li ...

  6. Python3 网络爬虫(请求库的安装)

    Python3 网络爬虫(请求库的安装) 爬虫可以简单分为几步:抓取页面,分析页面和存储数据 在页面爬取的过程中我们需要模拟浏览器向服务器发送请求,所以需要用到一些python库来实现HTTP的请求操 ...

  7. Python爬虫【解析库之pyquery】

    该库跟jQuery的使用方法基本一样  http://pyquery.readthedocs.io/ 官方文档 解析库的安装 pip3 install pyquery 初始化 1.字符串初始化 htm ...

  8. python3解析库pyquery

    pyquery是一个类似jquery的python库,它实现能够在xml文档中进行jQuery查询,pyquery使用lxml解析器进行快速在xml和html文档上操作,它提供了和jQuery类似的语 ...

  9. golang常用库:配置文件解析库-viper使用

    一.viper简介 viper 配置解析库,是由大神 Steve Francia 开发,他在google领导着 golang 的产品开发,他也是 gohugo.io 的创始人之一,命令行解析库 cob ...

随机推荐

  1. python 基础 4.4 生成式 生成器 迭代器

    一.生成式和生成器   列表生成式是python受欢迎的语法之一,通过一句简洁的语法就可以对一组元素进行过滤,还可以对得到的元素进行转换处理.   #/usr/bin/python #coding=u ...

  2. 函数模板&类模板

    #include <iostream> #if 0//函数模板 template<typename T> T max(T a, T b, T c)//函数模板 { if (a ...

  3. npm ERR! fatal: unable to connect to github.com

    https://blog.csdn.net/baidu_30809315/article/details/86520093 git config --global url."https:// ...

  4. wmiprvse.exe 进程占CPU过高 问题解决

    wmiprvse.exe是一个系统服务的进程,你可以结束任务,进程自然消失. 禁用Windows Management Instrumentation Driver Extensions服务或者改为手 ...

  5. a positive definite matrix

    https://en.wikipedia.org/wiki/Definite_quadratic_form https://www.math.utah.edu/~zwick/Classes/Fall2 ...

  6. win7下搭建nginx+php的开发环境(转)

    在win7下用的是IIS做web服务器,但近来因项目需求的原因,需要在服务器遇到404错误的时候自动做转向(不是在客户端的跳转,而是在服务器收到客户端请求去某目录下读取文件返回时,如果发现目录或目录下 ...

  7. Servlet详解(转)

    我们通过浏览器访问一个网页的过程,实际上是浏览器(例如IE)通过HTTP协议(参见附录B)和Web服务器(也叫做HTTP服务器)进行交互的过程. 也就是说,用户要访问网络资源,首先需要在网络上架设We ...

  8. Macaca,app-inspector安装

    1.安装brew 软件包管理工具:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/inst ...

  9. 51nod 1537

    题目 神犇题解 证明好巧妙,给跪OTZ 题目的式子:$ {\left( {1{\rm{ + }}\sqrt 2 } \right)^{\rm{n}}} $,设其乘开之后为 $ {\rm{a + b}} ...

  10. c 获取 域名ip

    #include <stdio.h> #include <netdb.h> int main(int argc, char *argv[]) { ) { printf(]); ...