搜索存储在Google云端硬盘中的pdf文档中的特定字符串

时间:2014-05-13 13:03:01

标签: string pdf google-apps-script

我的项目是发送带有pdf附件的电子邮件。 我的所有pdf都在google驱动器上的文件夹中,我需要查找与该特定客户相关的特定pdf。 pdf仅包含文本并包含客户编号。

因此,我需要一个脚本来将pdf中的文本提取为字符串并研究该字符串以查明它是否包含客户编号。

现在我用这个:

function myFunction() {
  // Creates a new file and logs its content
  var file = DocsList.getFileById('my pdf file id here')
  Logger.log(file.getContentAsString()); // logs 'sample file contents'
}

但是日志显示了编码问题:

  

米:BC-BݣXAP {   UHU @(=“J =%的C(R {焦耳/ = EV3 = P&GT,E(R { yXPdPޗEvj @ݣ2 Eqbh =“( {,vGEO_qov)PU \ 9 [G

有人知道如何从pdf中提取文字到字符串吗?

1 个答案:

答案 0 :(得分:0)

Get pdf-attachments from Gmail as text中的pdfToText()实用程序使用高级云端硬盘服务和DocumentApp将PDF格式转换为Google文档。您可以通过这种方式获取OCR文本,或将其直接保存到驱动器上任何文件夹中的txt文件。

// Start with a Blob object
var blob = DriveApp.getFilesByName("my.pdf")[0];

// filetext will contain text from pdf file, no residual files are saved:
var filetext = pdfToText( blob, {keepTextfile: false} );

获得文本后,搜索关键字变得非常简单!

if (filetext.indexOf( keyword ) !== -1) {
  // Found keyword...
}