モデル内に関数を記述して、サイトをスクレイピングし、特定の属性を別のモデル内に保存しました ( story
):
def get_content
request = HTTParty.get("#{url}")
doc = Nokogiri::HTML(request.body)
doc.css("#{anchor}")["#{range}"].each do |entry|
story = self.stories.new
story.title = entry.text
story.url = entry[:href]
story.save
end
これは、Sections 変数のurl
、anchor
、および属性を使用します。range
範囲属性は配列の範囲として保存されます-つまり0..2
、または11..13
-しかし、文字列を変数に変換できないと言われています。range
整数と文字列として保存しようとしましたが、どちらも失敗します。
範囲の最初と最後を 2 つの別々の整数としてデータベースに入力して配置できることはわかっています["#{beginrange}".."#{endrange}"]
が、これは面倒な方法のようです。
他のアイデアはありますか?よろしくお願いします