はじめに
スクレイピングで取得したurlのスクリーンショットを md5
を使い保存しました。
ソース
scrape.rb
#md5
require 'digest'
#省略...
ua = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/27.0.1453.116 Safari/537.36"
options = Selenium::WebDriver::Chrome::Options.new
options.add_argument('--headless')
options.add_argument('--no-sandbox')
options.add_argument('--disable-gpu')
options.add_argument('--disable-dev-shm-usage')
session = ""
session = Selenium::WebDriver.for :chrome, options: options
session.manage.timeouts.implicit_wait = 60
session.navigate.to link
#スクレイピングで取得したurlを乱数にして保存
image = "#{Digest::MD5.hexdigest(link)}.png"
session.save_screenshot("public/images_e/screenshot/#{image}")
session.quit
md5は使うのがとっても簡単で、
require 'digest'
としてあげるだけで、
Digest::MD5.hexdigest
を使い、乱数にしてあげることができます。
ちなみに
link.pngのようにurlのまま保存しようとすると、https//のように//が含まれてしまいエラーになり、mb5を使って保存することにしました。