首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >节点js应用程序中的pdf2json解析错误

节点js应用程序中的pdf2json解析错误
EN

Stack Overflow用户
提问于 2020-04-07 11:49:44
回答 1查看 2.4K关注 0票数 0

我在使用pdf2json将pdf转换成json格式时遇到了问题。我想通过nodejs使用pdf2json库将一个pdf文件转换成json格式。但是,在我为json指定的目录中没有json文件,当我放置空的json文件时它也没有过期。在调试模式下运行代码时,它会输出以下日志。我要怎么做才能把自己救活呢?

我遵循以下步骤:https://github.com/modesty/pdf2json

控制台日志消息

代码语言:javascript
复制
/Desktop/nodejs-pdf-parse/app.js
Debugger listening on ws://127.0.0.1:45843/bb0e57e8-b28d-4652-81f8-2cba00f4372b
For help, see: https://nodejs.org/en/docs/inspector
Debugger attached.
Waiting for the debugger to disconnect...

Process finished with exit code 130 (interrupted by signal 2: SIGINT)

Nodejs

代码语言:javascript
复制
let fs = require('fs'), PDFParser = require("pdf2json");

let pdfParser = new PDFParser(this, 1);

try {
    pdfParser.loadPDF("/Desktop/nodejs-pdf-parse/pdf/Paycheck-Protection.pdf");
}catch (e) {
    console.log(e)
}

pdfParser.on("pdfParser_dataError", errData => console.error(errData.parserError) );
pdfParser.on("pdfParser_dataReady", pdfData => {
    fs.writeFile("/Desktop/nodejs-pdf-parse/parsed-json/parsed.json", JSON.stringify(pdfData));
});

run:节点app.js

代码语言:javascript
复制
fs.js:148
  throw new ERR_INVALID_CALLBACK(cb);
  ^

TypeError [ERR_INVALID_CALLBACK]: Callback must be a function. Received undefined
    at maybeCallback (fs.js:148:9)
    at Object.writeFile (fs.js:1298:14)
    at PdfParser.<anonymous> (/home/mutlueren/Desktop/nodejs-pdf-parse/app.js:7:8)
    at PdfParser.emit (events.js:315:20)
    at PdfParser._onPDFJSParseDataReady (/home/mutlueren/Desktop/nodejs-pdf-parse/node_modules/pdf2json/pdfparser.js:25:9)
    at cls.emit (events.js:315:20)
    at /home/mutlueren/Desktop/nodejs-pdf-parse/node_modules/pdf2json/lib/pdf.js:250:38
    at processTicksAndRejections (internal/process/task_queues.js:79:11) {
  code: 'ERR_INVALID_CALLBACK'
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-22 10:20:36

代码语言:javascript
复制
const pdfParser = new PDFParser();
  pdfParser.on("pdfParser_dataError", (errData) =>
    console.error(errData.parserError)
  );
  pdfParser.on("pdfParser_dataReady", (pdfData) => {
    fs.writeFile(
      "/Desktop/nodejs-pdf-parse/parsed-json/parsed.json",
      JSON.stringify(pdfData),
      function (err, result) {
        console.log(err);
      }
    );
  });
  pdfParser.loadPDF("/Desktop/nodejs-pdf-parse/pdf/Paycheck-Protection.pdf");
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61079393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档