rubyでスクレイピングに挑戦しているのですが、どうしてもエラーが出てきてしまいます。
コードは以下のようにしました。
require 'mechanize'
def scraping_image(link)
agent = Mechanize.new
page = agent.get(link)
image_url = page.search('.sh1td5 a').get_attribute('href')
return image_url
end
links = []
agent = Mechanize.new
current_page = agent.get("http://www.shugiin.go.jp/internet/itdb_annai.nsf/html/statics/syu/1giin.htm")
elements = current_page.search('.sh1td5 a')
elements.each do |ele|
links << ele.get_attribute('href')
end
links.each do |link|
puts scraping_image('http://www.shugiin.go.jp/internet/itdb_annai.nsf/html/' + link)
end
出てくるエラーが以下になります。
.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/mechanize-2.7.5/lib/mechanize/http/agent.rb:323:in fetch': 404 => Net::HTTPNotFound for http://www.shugiin.go.jp/internet/itdb_annai.nsf/html/../../../../itdb_giinprof.nsf/html/profile/011.html -- unhandled response (Mechanize::ResponseCodeError) from /Users/yu-sakuharada/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/mechanize-2.7.5/lib/mechanize.rb:464:in
get'
from scraping.rb:5:in scraping_image' from scraping.rb:19:in
block in <main>'
from scraping.rb:18:in each' from scraping.rb:18:in
<main>'
これはどういうことなのでしょうか?
ご教示のほど、よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。