PDFファイルをダウンロード
1604 views
この記事ではブラウザで開くタイプのPDFを取得し、中のテキストを抽出する方法を記載します。
【できるようになること】
- ブラウザ表示のPDFファイルをダウンロード
(URL末尾に拡張子.pdfが入っているPDF) - PDFファイルからテキストを抽出
PDFのダウンロード/テキスト抽出を利用する場面
請求書や明細書などのPDF書類から、テキスト(文字列)情報を抽出する場合に便利です。
今回は例として、文化庁の近現代建造物緊急重点調査事業査のページに存在するPDFを取得し、中のテキストを抽出してみます。
- OpenBrowser(ブラウザを開く)アクションを設定します
- 以下のURLを入力します。
https://www.bunka.go.jp/seisaku/bunkazai/joseishien/kingendai_kenzobutsu_chosa/index.html


次に、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}と入力します。
※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