1

更新 2

nokogiri を使用してコンテンツと画像を Rails アプリにダウンロードします。このために、script/scraping.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/scraping.rb

数秒後、コンテンツ情報を含むデータベースと、フォルダー assets/images 内の画像があります。

興味を持ってくれた @JoshLewis に感謝し、@mario_chavez の助けに感謝します。

4

0 に答える 0