Google 脚本 - 读取 PDF 文件,识别为 text/html
Google Script - Read PDF file, recognised as text/html
你知道如何阅读 MIME 类型为 text/html 的 PDF 文件吗?
我已经尝试了下面的代码片段,但 OCR 不起作用,导致了这个问题 "API 调用 drive.files.insert 失败并出现错误:OCR 不支持text/html"
类型的文件
function extractTextFromPDF(pdfID) {
// PDF File URL
// You can also pull PDFs from Google Drive
var url = "https://drive.google.com/file/d/"+pdfID
var blob = UrlFetchApp.fetch(url).getBlob();
var resource = {
title: blob.getName(),
mimeType: blob.getContentType(),
};
// Enable the Advanced Drive API Service
var file = Drive.Files.insert(resource, blob, { ocr: true, ocrLanguage: 'en' });
// Extract Text from PDF file
var doc = DocumentApp.openById(file.id);
var text = doc.getBody().getText();
return text;
}
此外,我曾尝试将文件转换为任何其他格式,如 .csv .css 或文本,但什么时候转换的文本很糟糕,很长 HTML,我认为内容已加密.我考虑过从提取的 HTML 中拆分数据,但不幸的是,内容不存在或以某种方式加密。
我想做的是打印此有线 pdf 中的文本,以便稍后将其写入 Google 表格。你知道我如何阅读这个文件吗?
文件
我在这里附上了一个 pdf 文件,所以你可以看到我在和什么打架。
https://drive.google.com/file/d/1HXQk6PU9hzBb26EwoFQ0840W6ZihDUIX/view?usp=sharing
我使用了你的示例文件,看看我是怎么做的:
function myFunction() {
var pdfFile = DriveApp.getFilesByName("222-1522118.pdf").next();
var blob = pdfFile.getBlob();
// Get the text from pdf
var filetext = pdfToText( blob, {keepTextfile: false} );
console.log(filetext)
}
输出:
我使用了 Mogsdad 的库 pdfToText
参考:
你知道如何阅读 MIME 类型为 text/html 的 PDF 文件吗?
我已经尝试了下面的代码片段,但 OCR 不起作用,导致了这个问题 "API 调用 drive.files.insert 失败并出现错误:OCR 不支持text/html"
类型的文件function extractTextFromPDF(pdfID) {
// PDF File URL
// You can also pull PDFs from Google Drive
var url = "https://drive.google.com/file/d/"+pdfID
var blob = UrlFetchApp.fetch(url).getBlob();
var resource = {
title: blob.getName(),
mimeType: blob.getContentType(),
};
// Enable the Advanced Drive API Service
var file = Drive.Files.insert(resource, blob, { ocr: true, ocrLanguage: 'en' });
// Extract Text from PDF file
var doc = DocumentApp.openById(file.id);
var text = doc.getBody().getText();
return text;
}
此外,我曾尝试将文件转换为任何其他格式,如 .csv .css 或文本,但什么时候转换的文本很糟糕,很长 HTML,我认为内容已加密.我考虑过从提取的 HTML 中拆分数据,但不幸的是,内容不存在或以某种方式加密。
我想做的是打印此有线 pdf 中的文本,以便稍后将其写入 Google 表格。你知道我如何阅读这个文件吗? 文件 我在这里附上了一个 pdf 文件,所以你可以看到我在和什么打架。 https://drive.google.com/file/d/1HXQk6PU9hzBb26EwoFQ0840W6ZihDUIX/view?usp=sharing
我使用了你的示例文件,看看我是怎么做的:
function myFunction() {
var pdfFile = DriveApp.getFilesByName("222-1522118.pdf").next();
var blob = pdfFile.getBlob();
// Get the text from pdf
var filetext = pdfToText( blob, {keepTextfile: false} );
console.log(filetext)
}
输出:
我使用了 Mogsdad 的库 pdfToText
参考: