horsefield 0.4.3 → 0.4.4

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0f5b4da37cbaf7e0849d70748e380f7b207c7d1d
4
- data.tar.gz: 830aa7acdc756a64cedc424f9dd04d49f5734ccb
3
+ metadata.gz: 72eb85dd308813a1ce44691c3f9317c7b919ec68
4
+ data.tar.gz: 6d4cb9ad913266aa0a592b4305366cc62939b518
5
5
  SHA512:
6
- metadata.gz: c38b39c2a26f39994d1b1f09f013c5a4ef5c41b001e71f28cd7003da8d89a2d23a8267a528e4805cd587a9ed1d713245d857b8fcc5f4aea0a9ea9665441c98b1
7
- data.tar.gz: e1ce59b3063d0bf4e3db3993d1aec8c11181ce9f544f57584d6355d1e244712e507df12c65bfa52fb9a1d72d210d63764cf2ab61a06efbcaeddfc4af28f21c5c
6
+ metadata.gz: 42498ab4dda63c224fb6fc52831a28114343d69d2f321ec02cf4a7668308434b4a8350ab811b25500be6d76047062787ba6d3793480ecc0f4a83f60f2a9941b6
7
+ data.tar.gz: 72162c772ec6561119751e9d22b6bcacfea590674c442f0b8dc05b2ddde629d8a0e796ab141086333f30ad66e70d2dde60e81f9a6b7979d089630e4f0c2b6634
@@ -34,6 +34,14 @@ module Horsefield
34
34
  @postprocessor || Proc.new { self }
35
35
  end
36
36
 
37
+ def helper(name, &block)
38
+ [Nokogiri::HTML::Document, Nokogiri::XML::Element].each do |klass|
39
+ klass.instance_eval do
40
+ define_method(name) { |*args| block.call(*args) }
41
+ end
42
+ end
43
+ end
44
+
37
45
  def one(name, selector, lookup = :optional, &block)
38
46
  self.lookups << lambda { |doc| doc.one(name, selector, lookup, &block) }
39
47
  end
@@ -1,3 +1,3 @@
1
1
  module Horsefield
2
- VERSION = "0.4.3"
2
+ VERSION = "0.4.4"
3
3
  end
@@ -4,6 +4,10 @@ require 'pry'
4
4
  class RecipeScraper
5
5
  include Horsefield::Scraper
6
6
 
7
+ helper :convert_time do |str|
8
+ str.upcase
9
+ end
10
+
7
11
  scope '.hide_from_screen' do
8
12
  one :title, 'h1'
9
13
  one :description, 'h2'
@@ -14,6 +18,10 @@ class RecipeScraper
14
18
  one(:value) { at('span.value').text }
15
19
  end
16
20
 
21
+ one :total_time, '//div[contains(@style, "time.gif")]' do
22
+ convert_time(text.strip)
23
+ end
24
+
17
25
  postprocess do |doc|
18
26
  doc[:nutritional_value] = doc[:nutritional_value].uniq.compact
19
27
  doc
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: horsefield
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.3
4
+ version: 0.4.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Erik Strömberg