class Juknife::Agent
The agent to execute request and scraping to web page.
Attributes
request_dsl[R]
scraping_dsl[R]
Public Class Methods
request(&block)
click to toggle source
# File lib/juknife/agent.rb, line 35 def request(&block) @request_dsl = block end
scraping(&block)
click to toggle source
# File lib/juknife/agent.rb, line 39 def scraping(&block) @scraping_dsl = block end
Public Instance Methods
connection(params)
click to toggle source
# File lib/juknife/agent.rb, line 16 def connection(params) @connection ||= Faraday.new do |b| # request middlewares b.use Middleware::RequestDSL, params, &self.class.request_dsl b.use Faraday::Request::UrlEncoded # response middlewares b.use Middleware::ScrapingDSL, params, &self.class.scraping_dsl b.use Middleware::HTMLParser b.use Middleware::HTTPErrorHandler b.use FaradayMiddleware::FollowRedirects b.adapter :net_http end end
response(params)
click to toggle source
# File lib/juknife/agent.rb, line 12 def response(params) connection(params).get end
scrape(params = {})
click to toggle source
# File lib/juknife/agent.rb, line 8 def scrape(params = {}) response(params).body end