ruby

【rails】Mechanizeで取得した情報をview表示する方法

事前準備

コントローラーやroutes.rbを整理

  • rails g controller 【任意の名前】
  • routes.rbはresourcesを使用

コントローラーとviewファイルを整理

indexアクションを使い、以下の通りに記述。

【controller】

def index

end

該当のviewファイルを作成

【index.html.erb】

<% agent = Mechanize.new %>
<% page = agent.get(“https://matome.naver.jp/”) %>
<% elements = page.search(‘.mdTopMTMList01ItemTtl’) %>
<% elements.each do |element| %>
<p><%= element.inner_text%></p>
<%end%>

コントローラーやモデルに記述する方法もありますが、viewファイルに上記記述をしても動いたので共有です。

(Mechanizeを使用したスクレイピングについて解説している他のサイトはモデルやコントローラーに記述していました。オリジナルの知見を発信しようと思い、この記事を作成しました。)

 

ABOUT ME
アバター
Ryo
【複業家】会社員をしながら、web関連の事業を個人で行っています。SEOコンサル、Lステップ構築、ボイスパーカッション講師。