###前提・実現したいこと
Rubyでスクレイピングをしたいのですが映画.comで現在上映中の作品名のスクレイピングがエラーになってしまいます。ターミナル上で
超高速!参勤交代 リターンズ
ターザン:REBORN
シン・ゴジラ
ONE PIECE FILM GOLD
ロスト・バケーション
アクセル・ワールド INFINITE∞BURST
ミモザの島に消えた母
トランボ ハリウッドに最も嫌われた男
ヤング・アダルト・ニューヨーク
ザ・ボーイ〜人形少年の館〜
ファインディング・ドリー
ポケモン・ザ・ムービーXY&Z ボルケニオンと機巧のマギアナ
HiGH&LOW THE MOVIE
AMY エイミー
生きうつしのプリマ
のようにタイトルを引き出すためエラーの解決方法を教えて下さい。よろしくお願いします。
###発生している問題・エラーメッセージ
mechanize/http/agent.rb:305:in `fetch': 404 => Net::HTTPNotFound (Mechanize::ResponseCodeError) /.rbenv/versions/2.1.3/lib/ruby/gems/2.1.0/gems/mechanize-2.1.1/lib/mechanize.rb:360:in `get' from scraping_title.rb:4:in `<main>'
###該当のソースコード
require 'mechanize' a = Mechanize.new p = a.get("http://eiga.com/now/") lists = p.search('.m_unit h3 a') lists.each do |title| puts title.inner_text end
###試したこと
Yahoo!映画(http://movies.yahoo.co.jp/movie/intheater/)やgoo映画(http://movie.goo.ne.jp/schedule/)などでは問題のソースコードとほぼ同じ下記ソースコードにてタイトルの一覧を引き出す事が出来ました。
[Yahoo!映画]
require 'mechanize' a = Mechanize.new p = a.get("http://movies.yahoo.co.jp/movie/intheater/") lists = p.search('.col h3 a') lists.each do |title| puts title.inner_text end
[goo映画]
require 'mechanize' a = Mechanize.new p = a.get("http://movie.goo.ne.jp/schedule/") lists = p.search('.imagel strong a') lists.each do |title| puts title.inner_text end
###補足情報(言語/FW/ツール等のバージョンなど)
言語 : Ruby
OS : MacOS X El Captain10.11.5
Ruby ver. : 2.1.3
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/07/27 07:17