更新2
我使用nokogiri将内容和图像下载到rails应用程序。为此,我编写了脚本/ scrapping.rb文件:
require 'open-uri'
page_url = "<site_url>"
url = "<page_of_site_url>"
b = Nokogiri::HTML(open(url))
b.css(".col").each do |item|
img_url = item.at(".field-content a img")['src'].split('?')[0]
root_img_url = URI.join(page_url,img_url).to_s
file = File.open(File.join(Rails.root, 'app', 'assets', 'images', File.basename(root_img_url)), 'wb') do |f|
f.write(open(root_img_url).read)
end
Book.create(
:cover => File.basename(root_img_url),
:title => item.at_css(".views-field-title a").text,
:onsaledate => item.at_css(".date-display-single")['content'])
end
end
然后我在终端中运行脚本:
rails runner script/scrapping.rb
几秒钟之后,我的数据库中包含内容信息,以及资源/图像文件夹中的图像。
感谢@JoshLewis对@mario_chavez的帮助,特别感谢他的帮助。