Help us understand the problem. What is going on with this article?

RailsでPDFのテキストを読み込んでみる Poppler編

More than 1 year has passed since last update.

RailsでPDFのテキストを読み込んでみる pdf-reader編

前回うまく取り込めていなかったので、他のGemを探していたところ、Popplerが良さそうだったので試して見た。

gemのインストール

Gemfileにgem 'poppler'を追加してbundle installとしたらエラー。。。
色々探っていると、どうやらRabbitを入れると一緒にpopplerも入るということで、こちらを参考にまずはHomebrewでinstallとLinkの設定

$ brew install cairo
$ brew link cairo
$ brew link --overwrite pixman
$ brew install pango
$ brew install gtk+
$ brew install poppler --with-glib

その後Gemfileにgem 'rabbit'を追加してbundle install
今度は成功。 やったね!

Pdfの読み込み

  • Railsのタスクに登録して見る
lib/tasks/read_pdf.rake
namespace :read_pdf do
  desc 'PDF読み込み' # rake -T で表示する説明
  task read: :environment do
    # Report.pdfの読み込み処理
    reader = Poppler::Document.new('pdf/sample.pdf') # 読み込むPDF名
    puts reader.first.get_text                       # 読み込んだテキストの出力
  end
end

実行してみると

$ rails read_pdf:read
PDF サンプルデータ
お知らせ PDF サンプルデータお知らせ PDF サンプルデータお知らせ PDF
サンプルデータお知らせ PDF サンプルデータお知らせ PDF サンプルデー
タお知らせ PDF サンプルデータお知らせ PDF サンプルデータお知らせ
PDF サンプルデータお知らせ PDF サンプルデータお知らせ PDF サンプル
データお知らせ PDF サンプルデータ
お知らせ PDF サンプルデータお知らせ
PDF サンプルデータお知らせ PDF サ
ンプルデータお知らせ PDF サンプル
データお知らせ PDF サンプルデータお
知らせ PDF サンプルデータお知らせ
PDF サンプルデータお知らせ PDF サ
ンプルデータお知らせ PDF サンプル
データお知らせ PDF サンプルデータお
知らせ PDF サンプルデータ
お知らせ PDF サンプルデータお知らせ
PDF サンプルデータお知らせ PDF サ
ンプルデータお知らせ PDF サンプル
データお知らせ PDF サンプルデータお
知らせ PDF サンプルデータお知らせ
PDF サンプルデータお知らせ PDF サ
ンプルデータお知らせ PDF サンプル
データお知らせ PDF サンプルデータお
知らせ PDF サンプルデータ
$ 

pdf-reader編では文字化けしていたところがちゃんと表示されている。
installでハマらなければ、popplerの方が使いやすいね!

Why do not you register as a user and use Qiita more conveniently?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away