I follow https://www.youtube.com/watch?v=qKsGkhOwnKg
my code
require 'rubygems'
require 'pdf-reader'
reader = PDF::Reader.open("C:thisinh.pdf")
reader.pages.each do |page|
puts " **************** Page TEXT *********************************"
puts page.text
puts " **************** END Page TEXT *********************************"
end
# To read specific page text.
puts "total page available in pdf #{reader.page_count}"
puts "#{reader.pages[0].text}"
if reader.pages[0].text.include? "A number of natural states of water exist."
puts "content found"
else
puts "not found"
end
error
C:Ruby33-x64binruby.exe C:Ruby33-x64librubygems3.3.0gemsruby-debug-ide-3.0.0.beta.17binrdebug-ide --key-value --step-over-in-blocks --disable-int-handler --evaluation-timeout 10 --evaluation-control --time-limit 100 --memory-limit 0 --full-value-time-limit 20000 --full-value-memory-limit 0 --rubymine-protocol-extensions --port 56458 --host 0.0.0.0 --dispatcher-port 56459 -- C:/Users/firerose/RubymineProjects/ruby_excel/read_pdf.rb
Fast Debugger (ruby-debug-ide 3.0.0.beta.17, debase 3.0.0.beta.11, file filtering is supported, block breakpoints supported, smart steps supported, obtaining return values supported, partial obtaining of instance variables supported) listens on 0.0.0.0:56458
Uncaught exception: input must be an IO-like object or a filename (String)
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/pdf-reader-2.12.0/lib/pdf/reader/object_hash.rb:607:in `extract_io_from'
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/pdf-reader-2.12.0/lib/pdf/reader/object_hash.rb:47:in `initialize'
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/pdf-reader-2.12.0/lib/pdf/reader.rb:121:in `new'
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/pdf-reader-2.12.0/lib/pdf/reader.rb:121:in `initialize'
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/pdf-reader-2.12.0/lib/pdf/reader.rb:175:in `new'
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/pdf-reader-2.12.0/lib/pdf/reader.rb:175:in `open'
C:/Users/firerose/RubymineProjects/ruby_excel/read_pdf.rb:4:in `<top (required)>'
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/debase-3.0.0.beta.11/lib/debase.rb:248:in `load_protect'
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/debase-3.0.0.beta.11/lib/debase.rb:248:in `debug_load'
C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/pdf-reader-2.12.0/lib/pdf/reader/object_hash.rb:607:in `extract_io_from': input must be an IO-like object or a filename (String) (ArgumentError)
raise ArgumentError, "input must be an IO-like object or a filename (#{input.class})"
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/pdf-reader-2.12.0/lib/pdf/reader/object_hash.rb:47:in `initialize'
from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/pdf-reader-2.12.0/lib/pdf/reader.rb:121:in `new'
from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/pdf-reader-2.12.0/lib/pdf/reader.rb:121:in `initialize'
from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/pdf-reader-2.12.0/lib/pdf/reader.rb:175:in `new'
from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/pdf-reader-2.12.0/lib/pdf/reader.rb:175:in `open'
from C:/Users/firerose/RubymineProjects/ruby_excel/read_pdf.rb:4:in `<top (required)>'
from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/debase-3.0.0.beta.11/lib/debase.rb:248:in `load_protect'
from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/debase-3.0.0.beta.11/lib/debase.rb:248:in `debug_load'
from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/ruby-debug-ide-3.0.0.beta.17/lib/ruby-debug-ide.rb:129:in `debug_program'
from C:/Ruby33-x64/lib/ruby/gems/3.3.0/gems/ruby-debug-ide-3.0.0.beta.17/bin/rdebug-ide:202:in `<main>'
Process finished with exit code 1
This is my PDF file https://1drv.ms/f/s!Ar6K_3y3TiCPgftJn5xlec8hgP0wfg?e=4MOCwr
How to fix it?