class Datahen::Client::ScraperJob
Public Instance Methods
all(scraper_name, opts={})
click to toggle source
# File lib/datahen/client/scraper_job.rb, line 4 def all(scraper_name, opts={}) params = @options.merge(opts) self.class.get("/scrapers/#{scraper_name}/jobs", params) end
cancel(scraper_name, opts={})
click to toggle source
# File lib/datahen/client/scraper_job.rb, line 51 def cancel(scraper_name, opts={}) opts[:status] = 'cancelled' update(scraper_name, opts) end
create(scraper_name, opts={})
click to toggle source
# File lib/datahen/client/scraper_job.rb, line 9 def create(scraper_name, opts={}) body = {} body[:standard_worker_count] = opts[:workers] if opts[:workers] body[:browser_worker_count] = opts[:browsers] if opts[:browsers] body[:proxy_type] = opts[:proxy_type] if opts[:proxy_type] body[:max_page_size] = opts[:max_page_size] if opts[:max_page_size] body[:enable_global_cache] = opts[:enable_global_cache] if opts.has_key?("enable_global_cache") || opts.has_key?(:enable_global_cache) body[:retry_interval] = opts[:retry_interval] if opts[:retry_interval] if opts[:vars] if opts[:vars].is_a?(Array) body[:vars] = opts[:vars] elsif opts[:vars].is_a?(String) body[:vars] = JSON.parse(opts[:vars]) end end params = @options.merge({body: body.to_json}) self.class.post("/scrapers/#{scraper_name}/jobs", params) end
delete(scraper_name, opts={})
click to toggle source
# File lib/datahen/client/scraper_job.rb, line 72 def delete(scraper_name, opts={}) params = @options.merge(opts) self.class.delete("/scrapers/#{scraper_name}/current_job", params) end
find(scraper_name, opts={})
click to toggle source
# File lib/datahen/client/scraper_job.rb, line 28 def find(scraper_name, opts={}) if opts[:live] self.class.get("/scrapers/#{scraper_name}/current_job", @options) else self.class.get("/cached/scrapers/#{scraper_name}/current_job", @options) end end
pause(scraper_name, opts={})
click to toggle source
# File lib/datahen/client/scraper_job.rb, line 61 def pause(scraper_name, opts={}) opts[:status] = 'paused' update(scraper_name, opts) end
profile(scraper_name, opts={})
click to toggle source
# File lib/datahen/client/scraper_job.rb, line 66 def profile(scraper_name, opts={}) params = @options.merge(opts) self.class.get("/scrapers/#{scraper_name}/current_job/profile", params) end
resume(scraper_name, opts={})
click to toggle source
# File lib/datahen/client/scraper_job.rb, line 56 def resume(scraper_name, opts={}) opts[:status] = 'active' update(scraper_name, opts) end
update(scraper_name, opts={})
click to toggle source
# File lib/datahen/client/scraper_job.rb, line 36 def update(scraper_name, opts={}) body = {} body[:status] = opts[:status] if opts[:status] body[:standard_worker_count] = opts[:workers] if opts[:workers] body[:browser_worker_count] = opts[:browsers] if opts[:browsers] body[:proxy_type] = opts[:proxy_type] if opts[:proxy_type] body[:profile] = opts[:profile] if opts[:profile] body[:max_page_size] = opts[:max_page_size] if opts[:max_page_size] body[:enable_global_cache] = opts[:enable_global_cache] if opts.has_key?("enable_global_cache") || opts.has_key?(:enable_global_cache) body[:retry_interval] = opts[:retry_interval] if opts[:retry_interval] params = @options.merge({body: body.to_json}) self.class.put("/scrapers/#{scraper_name}/current_job", params) end