GASでPDFや画像から文字起こししてWordやテキストファイルに打ち込む流れを自動化する

2023-05-26

GAS

自動化

  • [x] フォルダに保存したファイル(Img, PDF)をGASの実行でOCRを行い結果をコピーファイルとして作成する
  • [ ] Googleドキュメントでなく、Wordファイルに保存する。もしくはGoogleドキュメントの内容をWordファイルに保存する

フォルダに保存したファイル(Img, PDF)をGASの実行でOCRを行い結果をコピーファイルとして作成する

まずは単純にフォルダ内のPDFやイメージをOCRにかけてファイルを作成する

参考リンク

https://www.iehohs.com/gas-ocr/

引用

function myFunction() { const ocrFolderID = 'OCR対象フォルダ'; let files = DriveApp.getFolderById(ocrFolderID).getFiles(); // OCR対象フォルダに入っているファイルを取得 let option = { 'ocr': true, // OCRを行うかの設定 'ocrLanguage': 'ja',// OCRを行う言語の設定 } while(files.hasNext()){ // 取得したファイルを1件ずつ処理 let file = files.next(); // ファイル単体を取得 subject = file.getName(); // ファイル名を取得 let resource = { title: subject }; let image = Drive.Files.copy(resource, file.getId(), option); // 指定したファイルをコピー let text = DocumentApp.openById(image.id).getBody().getText(); // コピー先ファイルのOCRのデータを取得 console.log(text); // OCR後のデータ削除を行う場合はコメントアウトを外す // Drive.Files.remove(image.id); } }

承認

https://tonari-it.com/gas-script-approval/

フォルダー作成 > GASの作成 > 適当なPDFのアップロードを行い、実行した所以下のエラーが発生した

Exception: Document is missing (perhaps it was deleted, or you don't have read access?)

原因はアクセス管理でリンクを知るユーザーにアクセス権限を付与していなかったから(閲覧権限で可能)

Googleドキュメントでなく、Wordファイルに保存する。もしくはGoogleドキュメントの内容をWordファイルに保存する

参考

https://it.cotomil.com/typedocx-mail/#toc1

//Googleドキュメントをdocxに変換 var fetchOpt = { "headers" : { Authorization: 'Bearer ' + ScriptApp.getOAuthToken() }, "muteHttpExceptions" : true }; var filename = '送信したいドキュメント名.docx' var docId = '添付したいファイルのID' ; //添付したいドキュメントのID var fetchUrl = 'https://docs.google.com/document/d/' + docId + '/export?format=docx'; //docxに変換 var newfile = UrlFetchApp.fetch(fetchUrl,fetchOpt).getBlob().setName(filename); //ドキュメント名を変換

必要箇所の抜き出し

var docId = '変換したいファイルのID' var fetchUrl = 'https://docs.google.com/document/d/' + docId + '/export?format=docx';

https://www.iehohs.com/gas-ocr/

https://infinity-agent.co.jp/lab/what_is_gas/

https://www.acrovision.jp/service/gas/?p=269

https://zenn.dev/hankei6km/articles/easily-use-google-drive-ocr-with-notion

https://qiita.com/kijuky/items/535e769a72343de85573

https://it.cotomil.com/typedocx-mail/#toc1

https://developers.google.com/apps-script/concepts/scopes?hl=ja#setting_explicit_scopes

https://qiita.com/kunihiros/items/255070ba950a7ba95ae4

https://sites.google.com/site/appsmatome/home/admin/oauth2

https://for-dummies.net/gas-noobs/how-to-create-a-new-file-on-google-drive/#2

TOP PAGE