Sha256: 89ab8b7b9c2337d7a6c8b5986dfe40d2f5519444d899cb2867c9c8c7d98d4a5a
Contents?: true
Size: 743 Bytes
Versions: 30
Compression:
Stored size: 743 Bytes
Contents
# frozen_string_literal: true require 'nokogiri' module Spotlight module Resources ## # Generic web resource harvester base module module Web extend ActiveSupport::Concern included do before_create do harvest! end end def harvest! response = Spotlight::Resources::Web.fetch url data[:headers] = response.headers data[:body] = response.body end def body harvest! if data[:body].blank? @body ||= Nokogiri::HTML.parse data[:body] end def self.fetch(url) Faraday.new(url) do |b| b.use FaradayMiddleware::FollowRedirects b.adapter :net_http end.get end end end end
Version data entries
30 entries across 30 versions & 1 rubygems