Ruby on Railsでのスクレイピングでuser-agentの指定がわからない
解決したいこと
Ruby on Railsでスクレイピングを行うアプリ作成を行いました。
cloud9ではuser-agent="ACME-Examplebot/1.0"等を指定することでスクレイピング可能です
しかし、Render.comへデプロイを行うとできなくなってしまいます。
個人的にはuser-agentが怪しいと思っていますが、調べてもよくわかりませんでした。
スクレイピングにはMechanizeを使用しています
コードは下記のようなものです
def index
@urls = Url.all
logger.debug(@urls)
@time_sche = []
@names = []
for i in 0..@urls.length-1
agent = Mechanize.new
agent.user_agent = "ACME-Examplebot/1.0"
page = agent.get(@urls[i][:link])
elements = page.search('div#pr_s ul li dl')
if i==0
@days = elements.search("dt").inner_text.split
# ここでエラー発生
end
date = []
elements.search("d").each do |dd|
date.push(dd.search(".2").inner_text.split)
end
new_date = []
flag = 0
for j in 0..date.length-1
if flag == 1
flag = 0
next
end
if date[j].include?("-")
new_date.push(date[j]+date[j+1])
flag = 1
elsif date[j]==""
new_date.push(" ")
else
new_date.push(date[j])
end
end
@time_sche.push(new_date)
@names.push(@urls[i][:name])
end
end
0