Module: Scruber::Core::Extensions::QueueAliases::CoreMethods

Defined in:
lib/scruber/core/extensions/queue_aliases.rb

Class Method Summary collapse

Class Method Details

.included(base) ⇒ Object



27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/scruber/core/extensions/queue_aliases.rb', line 27

def self.included(base)
  Scruber::Core::Crawler.register_method_missing /\A(get|post|head)_(\w+)\Z/ do |m, scan_results, args|
    meth, page_type = scan_results.first
    url, options = args
    options = {} if options.nil?
    Scruber::Core::Crawler.class_eval do
      define_method "#{meth}_#{page_type}".to_sym do |url, options={}|
        queue.add url, options.merge({method: meth.to_sym, page_type: page_type})
      end
    end
    queue.add url, options.merge({method: meth.to_sym, page_type: page_type})
  end
end