pdf-parse 错误 05-versions-space.pdf 解决方法

今天项目中要用到 pdf 识别文本,于是用到了 pdf-parse 这个库,结果上来就报错:

ENOENT: no such file or directory, open './test/data/05-versions-space.pdf'

去网上搜了下问题,原来是官方有一段测试代码没有删,真离谱,就是这段:

//for testing purpose
if (isDebugMode) {

    let PDF_FILE = './test/data/05-versions-space.pdf';
    let dataBuffer = Fs.readFileSync(PDF_FILE);
    Pdf(dataBuffer).then(function(data) {
        Fs.writeFileSync(`${PDF_FILE}.txt`, data.text, {
            encoding: 'utf8',
            flag: 'w'
        });
        debugger;
    }).catch(function(err) {
        debugger;
    });

}

解决方法很多,有一种就是去库中把这一段删了,但是为了避免修改依赖库的代码我就没有采用这种方案。

还有一种是导入时引入单独的库:import pdf from 'pdf-parse/lib/pdf-parse'

可以解决,但是后面可能还会报别的错误。

最简单的方法就是在项目根目录创建这个文件:test/data/05-versions-space.pdf

就可以完美解决了。

但是,我要说但是了,这个库不支持中文的识别...猝!

最后使用 pdfreader 这个库真正解决了,供参考。

 收藏 (0) 打赏

您可以选择一种方式赞助本站

支付宝扫一扫赞助

微信钱包扫描赞助

除特别注明外,本站所有文章均基于CC-BY-NC-SA 4.0原创,转载请注明出处。
文章名称:《pdf-parse 错误 05-versions-space.pdf 解决方法》
文章链接:https://www.xlin.cn/xlbk/20392.html
分享到: 更多 (0)

热门文章

评论 抢沙发

切换注册

登录

忘记密码 ?

切换登录

注册