質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

Q&A

解決済

3回答

1196閲覧

pdfのデータを自動的に取得する

SugiuraY

総合スコア317

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

0グッド

1クリップ

投稿2018/03/15 00:50

お世話になります。
エクセルをベースにしたような規則的なpdfファイルがあるのですが、
うまくデータを自動的に取得する方法はあるかアドバイスをいただきたく存じます。

全銀協tibor

上記のリンクは全国銀行協会で毎営業日自動的に更新されているのですが
例えば2018/3/2に2018/3/1の値を取得したいと考えております。

pdfをHTML化するツールを使用してphpでpreg_match等をする方法も
検討したのですが、どうしてもhtmlが崩れてしまい、適切に取得することが
保障されません。
一方で、クリップボードにコピーする場合には綺麗に取得することができるので
データ自体は取得することが可能かと考えているのですが、「pdf php スクレイピング」等
で検索しても良いものが出てこないため、何か良いアイデアがあればご教示頂ければ
幸いです。

宜しくお願い申し上げます。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答3

0

PHP/PDF/OCR かなキーワードとしては

投稿2018/03/15 00:56

退会済みユーザー

退会済みユーザー

総合スコア0

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

SugiuraY

2018/03/15 03:17

コメント有難うございます。 まだまだ初心者の私には難易度が高そうな記事ですが、実装できそうな印象を受けました。pdfimagesのwindows版アプリを探してみて、模索してみようと思います。
guest

0

PDF自体は仕様が公開されているファイル形式ですので、PDFを読み書きするためのライブラリも様々な物が公開されています。ただし、PDFは印刷出力を前提としたファイル形式ですので、表等の論理構造に従って正規化したデータとして取り出すような処理は苦手です。
クリップボードにテキストとして出力した場合には問題ないのであれば、PDF2TEXT等のツールを用いて、書式情報を含まない形で変換してはどうでしょう?

投稿2018/03/15 01:13

Kunihiro_Narita

総合スコア472

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

SugiuraY

2018/03/15 03:16

コメント有難うございます。 毎日自動的に取得する場合、外部ツールを実行することは難しそうです。と申し上げるよりも月に1回のため、手でコピペするのとあまり手間が変わらないため、うまい方法がないか少し検討してみようと思います。かようなツールがあることは初めて知りましたので、今後の参考にさせて頂きます。
guest

0

ベストアンサー

pdftoxmlで出力した一部分です。

xml

1 2-<TEXT id="p1_t6" height="11.029" width="55.2" y="112.676" x="45.4703"> 3 4<TOKEN id="p1_w34" height="11.029" width="55.2" y="112.676" x="45.4703" base="122.16" angle="0" rotation="0" font-color="#000000" font-size="11.04" italic="no" bold="no" fixed-width="yes" serif="yes" font-name="ms" sid="p1_s52">2018/03/14</TOKEN> 5 6</TEXT> 7 8 9-<TEXT id="p1_t7" height="11.029" width="35.3611" y="112.676" x="118.67"> 10 11<TOKEN id="p1_w35" height="11.029" width="35.3611" y="112.676" x="118.67" base="122.16" angle="0" rotation="0" font-color="#000000" font-size="11.04" italic="no" bold="no" fixed-width="yes" serif="yes" font-name="ms" sid="p1_s53">0.00364</TOKEN> 12 13</TEXT> 14 15 16-<TEXT id="p1_t8" height="11.029" width="35.3611" y="112.676" x="171.708"> 17 18<TOKEN id="p1_w36" height="11.029" width="35.3611" y="112.676" x="171.708" base="122.16" angle="0" rotation="0" font-color="#000000" font-size="11.04" italic="no" bold="no" fixed-width="yes" serif="yes" font-name="ms" sid="p1_s54">0.05545</TOKEN> 19 20</TEXT> 21 22 23-<TEXT id="p1_t9" height="11.029" width="35.3611" y="112.676" x="224.747"> 24 25<TOKEN id="p1_w37" height="11.029" width="35.3611" y="112.676" x="224.747" base="122.16" angle="0" rotation="0" font-color="#000000" font-size="11.04" italic="no" bold="no" fixed-width="yes" serif="yes" font-name="ms" sid="p1_s55">0.04818</TOKEN> 26 27</TEXT> 28 29 30-<TEXT id="p1_t10" height="11.029" width="35.3611" y="112.676" x="277.785"> 31 32<TOKEN id="p1_w38" height="11.029" width="35.3611" y="112.676" x="277.785" base="122.16" angle="0" rotation="0" font-color="#000000" font-size="11.04" italic="no" bold="no" fixed-width="yes" serif="yes" font-name="ms" sid="p1_s56">0.06909</TOKEN> 33 34</TEXT> 35 36 37-<TEXT id="p1_t11" height="11.029" width="35.3611" y="112.676" x="436.903"> 38 39<TOKEN id="p1_w39" height="11.029" width="35.3611" y="112.676" x="436.903" base="122.16" angle="0" rotation="0" font-color="#000000" font-size="11.04" italic="no" bold="no" fixed-width="yes" serif="yes" font-name="ms" sid="p1_s57">0.12636</TOKEN> 40 41</TEXT> 42 43 44-<TEXT id="p1_t12" height="11.029" width="35.3611" y="112.676" x="755.142"> 45 46<TOKEN id="p1_w40" height="11.029" width="35.3611" y="112.676" x="755.142" base="122.16" angle="0" rotation="0" font-color="#000000" font-size="11.04" italic="no" bold="no" fixed-width="yes" serif="yes" font-name="ms" sid="p1_s58">0.13636</TOKEN> 47 48</TEXT> 49

エレメントの属性値で座標とベースラインが取れるので、パースできそうです。

投稿2018/03/16 04:48

nullbot

総合スコア910

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

SugiuraY

2018/03/16 12:51

コメントありがとうございます。 しかしながら使用しているmacではサポートされてなかったみたいです。。 XMLに変換できる他のAPI等を探してみます。 よろしくお願い申し上げます。
SugiuraY

2018/03/17 07:06

コメントありがとうございます。 そうですね〜、DLして開こうとしても以下のようなalertが出てきてしまいます。。 書類“pdftoxml_osx”を開けませんでした。テキストエンコーディング Unicode(UTF-8) には対応していません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問