Skip to content

Instantly share code, notes, and snippets.

@ryopeko
Created May 4, 2014 09:05
Show Gist options
  • Select an option

  • Save ryopeko/1f0a6cb67aa70b0f0592 to your computer and use it in GitHub Desktop.

Select an option

Save ryopeko/1f0a6cb67aa70b0f0592 to your computer and use it in GitHub Desktop.

Revisions

  1. ryopeko renamed this gist May 4, 2014. 1 changed file with 0 additions and 0 deletions.
    File renamed without changes.
  2. ryopeko created this gist May 4, 2014.
    29 changes: 29 additions & 0 deletions gistfile1.txt
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,29 @@
    require 'capybara/dsl'
    require 'capybara/poltergeist'

    require 'digest/md5'

    class UriWorker
    include Sidekiq::Worker
    sidekiq_options retry: false

    Capybara.register_driver :poltergeist do |app|
    Capybara::Poltergeist::Driver.new(app, :js_errors => false)
    end

    Capybara.run_server = false
    Capybara.current_driver = :poltergeist
    include Capybara::DSL

    def perform(uri)
    logger.info "Dequeue: #{uri}"
    file_name = Digest::MD5.hexdigest(uri) + '.png'

    begin
    visit uri
    page.driver.save_screenshot file_name
    rescue Capybara::Poltergeist::TimeoutError => e
    logger.warn e.message
    end
    end
    end