Docly Child

PDFファイルをダウンロード

1317 views

この記事ではブラウザで開くタイプのPDFを取得し、中のテキストを抽出する方法を記載します。

【できるようになること】

  • ブラウザ表示のPDFファイルをダウンロード
    (URL末尾に拡張子.pdfが入っているPDF)
  • PDFファイルからテキストを抽出
PDFのダウンロード/テキスト抽出を利用する場面

請求書や明細書などのPDF書類から、テキスト(文字列)情報を抽出する場合に便利です。

 ワークフローの設定例

今回は例として、文化庁の近現代建造物緊急重点調査事業査のページに存在するPDFを取得し、中のテキストを抽出してみます。

 

次に、PDFのURL(末尾が.pdf)を取得します。

  • 適当なPDFのダウンロードリンクから、CSSセレクタを取得(クリップボードにコピー)します。
  • GetAttribute(要素の属性を取得)アクションを設定します。
  • selectorパラメータに、取得したCSSセレクタをペーストします。
  • attributeパラメータに、hrefと入力します。

  • StoreValue(変数に保存)アクションを設定します。
  • 変数名を「pdf」、値を「GetAttributeのアウトプット」とします。

 

2で取得したファイルのURLにドメインを付加し、PDFファイルを取得します。

  • DownloadFile(URL上のファイルを取得)アクションを設定します。
  • 以下のURLを入力します。※GetAttributeのアウトプットの中にドメインがないために必要な操作です。
    https://www.bunka.go.jp/seisaku/bunkazai/joseishien/kingendai_kenzobutsu_chosa/
  • URLを入力し終わったら、最後に${pdf}と入力します。

ダウンロードしたPDFから、中のテキストを取得します。

  • ConvertPDFToText(PDFからテキストを抽出)を設定します。
  • パラメータに、DownloadFileのアウトプットを指定します。

 

※ConvertPDFToTextのアウトプットは、当該アクションのログ内でスクロールすると確認できます
 
 
# ブラウザを開く
+open_browser_1:
  action>: OpenBrowser
  url: 'https://www.bunka.go.jp/seisaku/bunkazai/joseishien/kingendai_kenzobutsu_chosa/index.html'
  lang: 'ja-JP'
  headless: true
  useShadowDomSelector: false
  private: false

# 要素の属性を取得
+get_attribute_1:
  action>: GetAttribute
  browser: +open_browser_1
  selector: 'ul.mb20 li:nth-of-type(1) :nth-child(2) a'
  attribute: href
  ignoreError: true
  private: false

# 変数に保存
+store_value_1:
  action>: StoreValue
  key: pdf
  value: +get_attribute_1
  private: false

# URL上のファイルを取得
+download_file_1:
  action>: DownloadFile
  url: 'https://www.bunka.go.jp/seisaku/bunkazai/joseishien/kingendai_kenzobutsu_chosa/${pdf}'
  private: false

# PDFからテキストを抽出
+convert_p_d_f_to_text_1:
  action>: ConvertPDFToText
  pdf: +download_file_1
  private: false
<ConvertPDFToText>PDFからテキストを抽出/URL上のファイルを取得/DownloadFile

このページは役に立ちましたか?