distillery 0.3.0 → 0.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/README.md CHANGED
@@ -35,7 +35,7 @@ Both the `Distillery::Document#distill!` and `Distillery.distill` methods by def
35
35
  doc.distill!(:clean => false)
36
36
  > "raw distilled content"
37
37
 
38
- In its cleaning, Distillery will also remove all `<img>` tags from the content element. If you would like to preserve `<img>` tags, pass the `:images => true` option to the `Distillery::Document#distill!` and `Distillery.distill` methods. Please note that this will preserve any elements that wrap `<img>` tags that would have been removed under normal circumstances during cleaning.
38
+ In its cleaning, Distillery will also remove all `<img>` tags from the content element. If you would like to preserve `<img>` tags, pass the `:images => true` option to the `Distillery::Document#distill!` and `Distillery.distill` methods. Please note that Distillery *attempts* to only preserve elements from cleaning that contain "content images," but it is possible images that are part of the content will still be removed.
39
39
 
40
40
  doc.distill!(:images => true)
41
41
  > "raw distilled content with <img src=\"info.png\">"
data/Rakefile CHANGED
@@ -8,16 +8,21 @@ RSpec::Core::RakeTask.new(:spec) do |t|
8
8
  end
9
9
 
10
10
  require "distillery"
11
+ require "iconv"
11
12
 
12
13
  def doc_for_fixture(fixture)
13
14
  file = File.join(File.dirname(__FILE__), 'spec', 'fixtures', fixture)
14
- Distillery::Document.new(File.open(file).read)
15
+ raw_page = File.open(file).read
16
+ fixed_str = Iconv.new('UTF-8//IGNORE', 'UTF-8').iconv(raw_page + ' ')[0..-2]
17
+ Distillery::Document.new(fixed_str)
15
18
  end
16
19
 
17
20
  namespace :fixture do
18
21
  desc 'Open the fixture with data-score elements added showing an elements score'
19
22
  task :score, :filename do |t, args|
20
23
  doc = doc_for_fixture(args[:filename])
24
+ doc.remove_irrelevant_elements!
25
+ doc.remove_unlikely_elements!
21
26
 
22
27
  doc.score!
23
28
  doc.scores.each do |xpath, score|
@@ -32,7 +37,7 @@ namespace :fixture do
32
37
  desc 'Distill a fixture and open it'
33
38
  task :distill, :filename do |t, args|
34
39
  outfile = File.open("/tmp/distilled.#{args[:filename]}", 'w')
35
- outfile << doc_for_fixture(args[:filename]).distill!
40
+ outfile << doc_for_fixture(args[:filename]).distill!(:images => true)
36
41
  sh "open #{outfile.path}"
37
42
  end
38
43
  end
@@ -11,7 +11,7 @@ module Distillery
11
11
  UNLIKELY_TAGS = %w[head script link meta]
12
12
 
13
13
  # HTML ids and classes that are unlikely to contain the content element.
14
- UNLIKELY_IDENTIFIERS = /combx|comment|community|disqus|extra|foot|header|remark|rss|shoutbox|sidebar|sponsor|ad-break|agegate|pagination|pager|popup/i
14
+ UNLIKELY_IDENTIFIERS = /combx|comment|community|disqus|foot|header|remark|rss|shoutbox|sidebar|sponsor|ad-break|agegate|pagination|pager|popup/i
15
15
 
16
16
  # Elements that are whitelisted from being removed as unlikely elements
17
17
  REMOVAL_WHITELIST = %w[a body]
@@ -23,7 +23,7 @@ module Distillery
23
23
  POSITIVE_IDENTIFIERS = /article|body|content|entry|hentry|page|pagination|post|text/i
24
24
 
25
25
  # HTML ids and classes that are negative signals of the content element.
26
- NEGATIVE_IDENTIFIERS = /combx|comment|contact|foot|footer|footnote|link|media|promo|related|scroll|shoutbox|sponsor|tags|widget/i
26
+ NEGATIVE_IDENTIFIERS = /combx|comment|contact|foot|footer|footnote|link|media|promo|related|scroll|shoutbox|sponsor|tags|widget|related/i
27
27
 
28
28
  # HTML elements that are unrelated to the content in the content element.
29
29
  UNRELATED_ELEMENTS = %w[iframe form object]
@@ -119,16 +119,9 @@ module Distillery
119
119
  keep_images = !!options[:images]
120
120
 
121
121
  top_scoring_elements.each do |element|
122
-
123
- element.search("*").each do |node|
124
- next if contains_content_image?(node) && keep_images
125
- node.remove if has_empty_text?(node)
126
- end
127
-
128
122
  element.search("*").each do |node|
129
- next if contains_content_image?(node) && keep_images
130
- if UNRELATED_ELEMENTS.include?(node.name) ||
131
- (node.text.count(',') < 2 && unlikely_to_be_content?(node))
123
+ if cleanable?(node, keep_images)
124
+ debugger if node.to_s =~ /maximum flavor/
132
125
  node.remove
133
126
  end
134
127
  end
@@ -137,8 +130,18 @@ module Distillery
137
130
 
138
131
  private
139
132
 
133
+ def cleanable?(node, keep_images)
134
+ return false if contains_content_image?(node) && keep_images
135
+
136
+ UNRELATED_ELEMENTS.include?(node.name) ||
137
+ (node.text.count(',') < 2 && unlikely_to_be_content?(node))
138
+ end
139
+
140
140
  def contains_content_image?(node)
141
- node.name == 'img' || node.children.css('img').length > 0
141
+ has_images = (node.name == 'img' || node.children.css('img').length > 0)
142
+ idclass = node['id'].to_s + node['class'].to_s
143
+
144
+ !idclass.match(NEGATIVE_IDENTIFIERS) && has_images
142
145
  end
143
146
 
144
147
  def scorable_elements
@@ -240,14 +243,14 @@ module Distillery
240
243
  link_density = link_density(elem)
241
244
  is_anchor = elem.name == 'a'
242
245
 
243
- weight < 0 || # Terrible weight
244
- elem.text.empty? || # Empty text
245
- (!is_anchor && elem.text.length < 15) || # Short text and not a link
246
- img > p || # More images than paragraphs
247
- li > p && link_density > 0.2 || # Has lots of list items and moderate link density
248
- input > p / 3 || # Has a high % of inputs
249
- weight < 25 && link_density > 0.2 || # Weak content signal and moderate link density
250
- weight >= 25 && link_density > 0.5 # Strong content signal and high link density
246
+ weight < 0 || # Terrible weight
247
+ elem.text.empty? || # Empty text
248
+ (!is_anchor && elem.text.length < 15) || # Short text and not a link
249
+ img > p || # More images than paragraphs
250
+ li > p && link_density > 0.2 || # Has lots of list items and moderate link density
251
+ input > p / 3 || # Has a high % of inputs
252
+ weight < 25 && link_density > 0.2 || # Weak content signal and moderate link density
253
+ weight >= 25 && link_density > 0.5 # Strong content signal and high link density
251
254
  end
252
255
 
253
256
  end
@@ -1,3 +1,3 @@
1
1
  module Distillery
2
- VERSION = "0.3.0"
2
+ VERSION = "0.4.0"
3
3
  end
@@ -193,4 +193,11 @@ distillation_of 'oyako.html' do
193
193
  subject.should =~ /Ingredients:/
194
194
  subject.should =~ /4 servings/
195
195
  subject.should =~ /Goes well with a clear soup/
196
+ end
197
+
198
+ distillation_of 'cheese_spread.html', images: true do
199
+ subject.should =~ /Yield/
200
+ subject.should =~ /maximum flavor/
201
+ subject.should_not =~ /You May Also Enjoy.../ # Related
202
+ subject.should_not =~ /recipe developer/ # Sidebar
196
203
  end
@@ -0,0 +1,441 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="en-US">
2
+ <head profile="http://gmpg.org/xfn/11">
3
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
4
+ <title>Apple Cheese Spread Recipe | RecipeGirl.com</title>
5
+ <link rel="stylesheet" href="http://www.recipegirl.com/wp-content/themes/recipegirl/style.css" type="text/css" media="screen" />
6
+ <!--[if lte IE 6]>
7
+ <link rel="stylesheet" href="http://www.recipegirl.com/wp-content/themes/recipegirl/ie6.css" type="text/css" />
8
+ <![endif]-->
9
+
10
+ <link rel="alternate" type="application/rss+xml" title="RecipeGirl.com RSS Feed" href="http://www.recipegirl.com/feed/" />
11
+ <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
12
+ <link rel="pingback" href="http://www.recipegirl.com/xmlrpc.php" />
13
+ <script type='text/javascript' src='http://recipegirl.ziplist.com/javascripts/pt_include.js'></script>
14
+ <link rel="alternate" type="application/rss+xml" title="RecipeGirl.com &raquo; Apple Cheese Spread Comments Feed" href="http://www.recipegirl.com/2007/05/26/apple-cheese-spread/feed/" />
15
+ <link rel='stylesheet' id='contact-form-7-css' href='http://www.recipegirl.com/wp-content/plugins/contact-form-7/styles.css?ver=2.4.6' type='text/css' media='all' />
16
+ <script type='text/javascript' src='http://www.recipegirl.com/wp-includes/js/l10n.js?ver=20101110'></script>
17
+ <script type='text/javascript' src='http://www.recipegirl.com/wp-includes/js/jquery/jquery.js?ver=1.6.1'></script>
18
+ <link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://www.recipegirl.com/xmlrpc.php?rsd" />
19
+ <link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://www.recipegirl.com/wp-includes/wlwmanifest.xml" />
20
+ <link rel='index' title='RecipeGirl.com' href='http://www.recipegirl.com/' />
21
+ <link rel='start' title='Farfalle with Spinach, Garlic and Ricotta' href='http://www.recipegirl.com/0006/09/23/farfalle-with-spinach-garlic-and-ricotta/' />
22
+ <link rel='prev' title='Fried Calamari with Spicy Mayonnaise' href='http://www.recipegirl.com/2007/05/25/fried-calamari-with-spicy-mayonnaise/' />
23
+ <link rel='next' title='Asiago Cheese Dip' href='http://www.recipegirl.com/2007/05/26/asiago-cheese-dip/' />
24
+ <link rel='shortlink' href='http://www.recipegirl.com/?p=65' />
25
+
26
+ <!-- All in One SEO Pack 1.6.13.4 by Michael Torbert of Semper Fi Web Design[300,350] -->
27
+ <meta name="description" content="An easy to make cheese spread with a combination of cream cheese, sharp cheddar, grated apple & herbs- mix, refrigerate and eat." />
28
+ <meta name="keywords" content="apple cheese spread, cheese crock recipes,apple,cheddar cheese" />
29
+ <link rel="canonical" href="http://www.recipegirl.com/2007/05/26/apple-cheese-spread/" />
30
+ <!-- /all in one seo pack -->
31
+ <script type="text/javascript">
32
+ //<![CDATA[
33
+ var _wpcf7 = { cached: 1 };
34
+ //]]>
35
+ </script>
36
+ <style type="text/css">.recentcomments a{display:inline !important;padding:0 !important;margin:0 !important;}</style>
37
+ <style type="text/css">.broken_link, a.broken_link {
38
+ text-decoration: line-through;
39
+ }</style><!-- wp thread comment 1.4.9.4.002 -->
40
+
41
+
42
+ </head>
43
+ <body>
44
+
45
+ <div class="sociallinks">
46
+
47
+ <div style="width:130px"><a href="http://recipegirl.ziplist.com/recipes/box"><img src="http://www.recipegirl.com/wp-content/themes/recipegirl/images/recipebox.png" width="27" height="27" alt=" " border="0" /><strong>recipe box</strong><br/>view</a> / <a href="http://recipegirl.ziplist.com/mylist/">shopping list</a></div>
48
+
49
+ <div style="width:80px"><a href="http://www.twitter.com/recipegirl" target="_blank"><img src="http://www.recipegirl.com/wp-content/themes/recipegirl/images/twitter.png" width="27" height="27" alt=" " border="0" /><strong>twitter</strong><br/>follow me</a></div>
50
+
51
+ <div style="width:100px"><a href="https://www.facebook.com/pages/RecipeGirl/107332655959579" target="_blank"><img src="http://www.recipegirl.com/wp-content/themes/recipegirl/images/facebook.png" width="27" height="27" alt=" " border="0" /><strong>facebook</strong><br/>become a fan</a></div>
52
+
53
+ <div style="width:90px"><a href="http://feeds.feedburner.com/TheRecipeGirl"><img src="http://www.recipegirl.com/wp-content/themes/recipegirl/images/rss.png" width="27" height="27" alt=" " border="0" /><strong>subscribe</strong><br/>rss</a> / <a href="http://www.feedblitz.com/f/f.fbz?sub=340510" target="_blank">email</a></div>
54
+
55
+ </div>
56
+
57
+
58
+ <div id="header">
59
+ <img src="http://www.recipegirl.com/wp-content/themes/recipegirl/images/girl.png" width="115" height="137" alt="" border="0" class="girl" />
60
+ <h1><a href="/"><img src="http://www.recipegirl.com/wp-content/themes/recipegirl/images/recipegirl_logo.png" width="245" height="100" alt="RecipeGirl.com" border="0" class="logo" /></a></h1>
61
+ <img src="http://www.recipegirl.com/wp-content/themes/recipegirl/images/tagline.png" width="522" height="47" alt="" border="0" class="tagline" />
62
+
63
+
64
+ <form method="get" id="headsearch" action="http://www.recipegirl.com/">
65
+ <input type="text" name="s" id="s" value="" class="searchinput"/>
66
+ <input type="submit" class="searchsubmit" value="Search" />
67
+ </form>
68
+ </div>
69
+
70
+ <div id="topnav" class="menu-top-container"><ul id="topmenu" class="menu"><li id="menu-item-18368" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-18368"><a href="/">Home</a></li>
71
+ <li id="menu-item-11503" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-11503"><a href="http://www.recipegirl.com/about/">about</a></li>
72
+ <li id="menu-item-11505" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-11505"><a href="http://www.recipegirl.com/recipes/">Recipe Index</a></li>
73
+ <li id="menu-item-18279" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-18279"><a href="http://www.recipegirl.com/category/beyondfood/">Beyond Food</a></li>
74
+ <li id="menu-item-11738" class="menu-item menu-item-type-taxonomy menu-item-object-category menu-item-11738"><a href="http://www.recipegirl.com/category/entertaining/theme-party-menus/">Theme Menus</a></li>
75
+ <li id="menu-item-13318" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-13318"><a href="http://www.herchannel.com/recipegirl">Videos</a></li>
76
+ <li id="menu-item-11504" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-11504"><a href="http://www.recipegirl.com/contact/">Contact</a></li>
77
+ </ul></div>
78
+
79
+
80
+ <div id="wrapper">
81
+
82
+ <div id="content">
83
+
84
+
85
+
86
+ <div class="post">
87
+ <div class="postmeta">
88
+ <a href="http://www.recipegirl.com/2007/05/26/apple-cheese-spread/#respond" title="Comment on Apple Cheese Spread">0 Comments</a> / <a href="#respond">Leave a Comment &raquo;</a>
89
+ </div>
90
+ <h2 class="posttitle"><a href="http://www.recipegirl.com/2007/05/26/apple-cheese-spread/" rel="bookmark">Apple Cheese Spread</a></h2>
91
+
92
+ <p><img src="http://staging.recipegirl.com/wp-content/uploads/2006/05/Apple-Cheese-Spread.jpg" alt="" title="Apple Cheese Spread" width="600" height="579" class="aligncenter size-full wp-image-12004" /></p>
93
+ <blockquote class="recipe hrecipe">
94
+ <p class="printbutton" style="float:right">
95
+ <a href="http://www.recipegirl.com/2007/05/26/apple-cheese-spread/print/" title="Print Recipe"><img src="http://www.recipegirl.com/wp-content/themes/recipegirl/images/print.png" alt="Print" width="16" height="16" class="printimg" /> Print Recipe</a><br/>
96
+ <a href='javascript:void(0);' onmouseup='getZRecipe(this, "recipegirl", "");
97
+ return false;' title='Save to ZipList'><img src="http://www.recipegirl.com/wp-content/themes/recipegirl/images/ziplist.png" alt="Save" width="16" height="16" class="printimg" /> Save Recipe</a>
98
+ <br/><img src="http://www.recipegirl.com/wp-content/uploads/2006/05/Apple-Cheese-Spread-130x130.jpg" class="photo" align="right" height="100" width="100" style="margin-top:10px;" />
99
+ </p>
100
+
101
+ <span class="item">
102
+ <h2 class="fn">Apple Cheese Spread</h2>
103
+ </span>
104
+
105
+
106
+ <p class="yield"><strong>Yield:</strong> <span class="yield">2 1/2 cups of dip</span></p>
107
+ <p class="time" style="margin-right: 10px; float: left; clear:left"><strong>Prep Time:</strong> <span class="preptime">10 minutes + chill time</span></p>
108
+
109
+ <div class="summary" style="clear:left"><p>This recipe takes only about 10 minutes to prepare- just blend all of the ingredients together and let the refrigerator do its magic for about an hour. While chilling, the flavors will meld and come together wonderfully.</p>
110
+ </div>
111
+
112
+ <h3 style="clear:left">Ingredients:</h3>
113
+ <div class="ingredient"><p>8 ounces reduced-fat cream cheese, softened<br />
114
+ 1 cup grated sharp Cheddar cheese, at room temperature<br />
115
+ 2 Tablespoons brandy or sherry<br />
116
+ 1 medium Granny Smith apple (peeled, cored & grated)<br />
117
+ 1 teaspoon dried basil<br />
118
+ 1 teaspoon dried oregano<br />
119
+ 1 teaspoon dried thyme<br />
120
+ 1/4 teaspoon freshly ground black pepper</p>
121
+ </div>
122
+ <h3>Directions:</h3>
123
+ <div class="instructions"><p>1. Combine cream cheese, Cheddar, and brandy in a bowl. Beat with an electric mixer until smooth. Stir in the apple. Add basil, oregano, thyme, and pepper; stir until thoroughly combined.</p>
124
+ <p>2. Spoon the mixture into a serving dish; cover and chill for approximately 1 hour. Serve with crackers.</p>
125
+ </div>
126
+
127
+ <h3>Tips:</h3>
128
+ <div class="extra"><p>*It's ok to use reduced-fat cream cheese, but do use regular sharp cheddar for maximum flavor.</p>
129
+ </div>
130
+
131
+
132
+ <div class="source"><p><strong>Source:</strong>: RecipeGirl.com (Adapted from <em><a href="http://www.amazon.com/dp/1580173896?tag=reciandente-20&camp=0&creative=0&linkCode=as1&creativeASIN=1580173896&adid=0K7FDR2V9DJ737WJJ5ZA">Apple Cookbook)</a></em></p>
133
+ </div>
134
+ </blockquote>
135
+
136
+
137
+ <div class="addthis">
138
+ <div class="addthis_toolbox addthis_default_style">
139
+ <a class="addthis_button_email"></a>
140
+ <a class="addthis_button_facebook"></a>
141
+ <a class="addthis_button_twitter"></a>
142
+ <a class="addthis_button_stumbleupon"></a>
143
+ <a class="addthis_button_favorites"></a>
144
+ <a href="http://addthis.com/bookmark.php?v=250" class="addthis_button_compact"></a>
145
+ <span class="addthis_separator"> &nbsp; </span>
146
+ <a class="addthis_button_tweet" tw:count="horizontal" tw:via="recipegirl"></a>
147
+ <a class="addthis_button_facebook_like"></a>
148
+ <a href="javascript:void((function(){var%20e=document.createElement('script');e.setAttribute('type','text/javascript');e.setAttribute('charset','UTF-8');e.setAttribute('src','http://assets.pinterest.com/js/pinmarklet.js?r='+Math.random()*99999999);document.body.appendChild(e)})());"><img style="margin: 0 0 0 0px;" onclick="doPinIt();" src="/images/pinit.png" alt="Pin It" class="noborder" /></a>
149
+ </div>
150
+ <script type="text/javascript" src="http://s7.addthis.com/js/250/addthis_widget.js#username=recipegirl"></script>
151
+ </div>
152
+
153
+
154
+ <div class="postmeta metabottom">
155
+ <div class="left">
156
+ <a href="http://www.recipegirl.com/2007/05/26/apple-cheese-spread/#respond" title="Comment on Apple Cheese Spread">0 Comments</a> / <a href="#respond">Leave a Comment &raquo;</a>
157
+ </div>
158
+
159
+ <div class="right">
160
+ Posted by Lori Lange on May 26, 2007 </div>
161
+
162
+ <div class="clear"></div>
163
+ </div><!-- end .postmeta -->
164
+
165
+
166
+ </div> <!-- end .post -->
167
+
168
+ <div id="text-448953177" class="postad widget_text "> <div class="textwidget"><!-- Begin supplemental 300 ad -->
169
+ <script src="http://ads.blogherads.com/80/8053/300b.js" type="text/javascript"></script>
170
+ <!-- End supplemental 300 ad --></div>
171
+ </div>
172
+
173
+ <div class="relatedposts"><h4 id="related">You May Also Enjoy...</h4><ul class="archives"> <li class="archivepost">
174
+ <a href="http://www.recipegirl.com/2008/06/16/easy-apple-cinnamon-muffins/" rel="bookmark" title="Easy Apple Cinnamon Muffins">
175
+ <img width="130" height="130" src="http://www.recipegirl.com/wp-content/uploads/2008/06/Easy-Apple-Cinnamon-Muffins-130x130.jpg" class="attachment-thumbnail wp-post-image" alt="Easy Apple Cinnamon Muffins" title="" />
176
+ <span class="title">Easy Apple Cinnamon Muffins</span></a>
177
+ </li>
178
+ <li class="archivepost">
179
+ <a href="http://www.recipegirl.com/2006/05/28/prosciutto-apple-wedges/" rel="bookmark" title="Prosciutto- Apple Wedges">
180
+ <img src="http://www.recipegirl.com/wp-content/themes/recipegirl/images/default.png" alt="Prosciutto- Apple Wedges"/>
181
+
182
+ <span class="title">Prosciutto- Apple Wedges</span></a>
183
+ </li>
184
+ <li class="archivepost">
185
+ <a href="http://www.recipegirl.com/2008/08/12/whole-grainapple-cake/" rel="bookmark" title="Whole Grain Apple Cake">
186
+ <img src="http://www.recipegirl.com/wp-content/themes/recipegirl/images/default.png" alt="Whole Grain Apple Cake"/>
187
+
188
+ <span class="title">Whole Grain Apple Cake</span></a>
189
+ </li>
190
+ <li class="archivepost">
191
+ <a href="http://www.recipegirl.com/2008/06/20/buffet-breakfast-casserole/" rel="bookmark" title="Buffet Breakfast Casserole">
192
+ <img width="130" height="130" src="http://www.recipegirl.com/wp-content/uploads/2008/06/Buffet-Breakfast-Casserole-130x130.jpg" class="attachment-thumbnail wp-post-image" alt="Buffet Breakfast Casserole" title="" />
193
+ <span class="title">Buffet Breakfast Casserole</span></a>
194
+ </li>
195
+ </ul></div>
196
+
197
+
198
+
199
+
200
+
201
+ <!-- You can start editing here. -->
202
+
203
+
204
+ <!-- If comments are open, but there are no comments. -->
205
+
206
+
207
+
208
+
209
+
210
+ <h4 id="respond">Leave a Comment</h4>
211
+
212
+ <div class="cancel-comment-reply">
213
+ <small><a rel="nofollow" id="cancel-comment-reply-link" href="/2007/05/26/apple-cheese-spread/#respond" style="display:none;">Click here to cancel reply.</a></small>
214
+ </div>
215
+
216
+
217
+ <form action="http://www.recipegirl.com/wp-comments-post.php" method="post" id="commentform">
218
+
219
+
220
+ <p><label for="author">Name (required)</label><br/><input type="text" name="author" id="author" class="commentinput" value="" size="22" tabindex="1" aria-required='true' /></p>
221
+
222
+ <p><label for="email">Mail (required - will not be published)</label><br/><input type="text" name="email" id="email" class="commentinput" value="" size="22" tabindex="2" aria-required='true' /></p>
223
+
224
+ <p><label for="url">Website URL</label><br/>
225
+ <input type="text" name="url" id="url" class="commentinput" value="" size="22" tabindex="3" /></p>
226
+
227
+
228
+ <p><label for="comment">Comment</label>
229
+ <textarea name="comment" id="comment" class="commentinput" cols="70" rows="10" tabindex="4"></textarea></p>
230
+
231
+ <p><input name="submit" type="submit" id="submit" tabindex="5" value="Submit Comment" />
232
+ <input type='hidden' name='comment_post_ID' value='65' id='comment_post_ID' />
233
+ <input type='hidden' name='comment_parent' id='comment_parent' value='0' />
234
+ </p>
235
+ <p style="display: none;"><input type="hidden" id="akismet_comment_nonce" name="akismet_comment_nonce" value="ebad455de7" /></p><p><input type="hidden" id="comment_reply_ID" name="comment_reply_ID" value="0" /><input type="hidden" id="comment_reply_dp" name="comment_reply_dp" value="0" /></p><div id="cancel_reply" style="display:none;"><a href="javascript:void(0)" onclick="movecfm(null,0,1,null);" style="color:red;">Click to cancel reply</a></div><script type="text/javascript">
236
+ /* <![CDATA[ */
237
+ var commentformid = "commentform";
238
+ var USERINFO = false;
239
+ var atreply = "none";
240
+ /* ]]> */
241
+ </script>
242
+ <script type="text/javascript" src="http://www.recipegirl.com/wp-content/plugins/wordpress-thread-comment/wp-thread-comment.js.php?jsver=common"></script>
243
+
244
+ </form>
245
+
246
+
247
+
248
+
249
+ </div> <!-- end #content -->
250
+
251
+ <div id="sidebar">
252
+
253
+ <ul id="topsidebar">
254
+ <li id="text-448953162" class="widget widget_text aboutbox"><h3 class="widgettitle">Welcome to Recipe Girl!</h3> <div class="textwidget"><p><img src="/images/about.jpg" width="75" height="94" alt="About Lori" align="right" />I'm Lori Lange, recipe developer, food writer and Mom. I'm sharing over 2,500 of my favorite recipes and theme menus with you. </div>
255
+ </li> </ul>
256
+
257
+ <ul id="topsidebar-ad">
258
+ <li id="text-352500501" class="widget widget_text "> <div class="textwidget"><!-- BEGIN 300x250 MAIN AD-->
259
+ <script src="http://ads.blogherads.com/80/8053/300a.js" type="text/javascript"></script>
260
+ <!-- END 300x250 MAIN AD--></div>
261
+ </li><li id="text-448953167" class="widget widget_text "> <div class="textwidget"></div>
262
+ </li><li id="text-448953163" class="widget widget_text subscribe"><h3 class="widgettitle"> Stay Connected</h3> <div class="textwidget"><p>get free email updates</p>
263
+ <form class="emailform" action="http://www.feedblitz.com/feedblitz.exe?BurnUser" method="post" >
264
+ <input name="email" maxlength="255" type="text" id="email" class="emailinput"/><input name="uri" type="hidden" value="http://feeds.feedburner.com/TheRecipeGirl" /><input type="submit" value="Subscribe &raquo;" class="emailsubmit" /></form></div>
265
+ </li> </ul>
266
+
267
+ <ul id="leftsidebar">
268
+
269
+ <li class="widget bfwidget">
270
+ <h3 class="widgettitle"><a href="/category/beyondfood">Beyond Food</a></h3>
271
+ <ul>
272
+
273
+ <li><a href="http://www.recipegirl.com/2011/12/13/what-do-teachers-want-for-christmas/">
274
+ <img width="130" height="130" src="http://www.recipegirl.com/wp-content/uploads/2011/12/Teacher-1-130x130.jpg" class="attachment-thumbnail wp-post-image" alt="Teacher 1" title="Teacher 1" /> <span class="title">What Do Teachers Want for Christmas?</span></a> <span class="date">(12/13/11)</span>
275
+ </li>
276
+
277
+ <li><a href="http://www.recipegirl.com/2011/12/08/gift-ideas-for-girls-of-all-ages/">
278
+ <img width="130" height="130" src="http://www.recipegirl.com/wp-content/uploads/2011/12/Gift-Ideas-for-Girls-ages-18-to-infinity-130x130.jpg" class="attachment-thumbnail wp-post-image" alt="Gift Ideas for Girls ages 18 to infinity" title="Gift Ideas for Girls ages 18 to infinity" /> <span class="title">Gift Ideas for Girls of All Ages</span></a> <span class="date">(12/8/11)</span>
279
+ </li>
280
+
281
+ <li><a href="http://www.recipegirl.com/2011/11/29/gift-ideas-for-boys-of-all-ages/">
282
+ <img width="130" height="130" src="http://www.recipegirl.com/wp-content/uploads/2011/11/Gift-Recommendations-for-Boys-5-130x130.jpg" class="attachment-thumbnail wp-post-image" alt="Gift Recommendations for Boys 5" title="Gift Recommendations for Boys 5" /> <span class="title">Gift Ideas for Boys of All Ages</span></a> <span class="date">(11/29/11)</span>
283
+ </li>
284
+
285
+ </ul>
286
+ <div class="readmore"><a href="/category/beyondfood">More Beyond Food &raquo;</a></div>
287
+ </li>
288
+
289
+
290
+ <li id="recent-posts-3" class="widget widget_recent_entries "> <h3 class="widgettitle">Recent Posts</h3> <ul>
291
+ <li><a href="http://www.recipegirl.com/2011/12/19/butterfinger-truffles/" title="Butterfinger Truffles">Butterfinger Truffles</a></li>
292
+ <li><a href="http://www.recipegirl.com/2011/12/17/salted-caramel-sauce-printable-labels/" title="Salted Caramel Sauce + Printable Labels">Salted Caramel Sauce + Printable Labels</a></li>
293
+ <li><a href="http://www.recipegirl.com/2011/12/15/gluten-free-molasses-crinkles/" title="Gluten Free Molasses Crinkles">Gluten Free Molasses Crinkles</a></li>
294
+ <li><a href="http://www.recipegirl.com/2011/12/14/how-to-make-norwegian-salmon-gravlax/" title="How to Make Norwegian Salmon Gravlax">How to Make Norwegian Salmon Gravlax</a></li>
295
+ <li><a href="http://www.recipegirl.com/2011/12/13/what-do-teachers-want-for-christmas/" title="What Do Teachers Want for Christmas?">What Do Teachers Want for Christmas?</a></li>
296
+ <li><a href="http://www.recipegirl.com/2011/12/12/almond-roca-2/" title="Almond Roca">Almond Roca</a></li>
297
+ <li><a href="http://www.recipegirl.com/2011/12/08/gift-ideas-for-girls-of-all-ages/" title="Gift Ideas for Girls of All Ages">Gift Ideas for Girls of All Ages</a></li>
298
+ <li><a href="http://www.recipegirl.com/2011/12/08/slow-cooker-garlic-chicken/" title="Slow Cooker Garlic Chicken">Slow Cooker Garlic Chicken</a></li>
299
+ </ul>
300
+ </li><li id="text-448953171" class="widget widget_text "> <div class="textwidget"><img class="aligncenter size-full wp-image-15837" title="saveur-icon" src="http://www.recipegirl.com/wp-content/uploads/2011/05/saveur-icon.gif" alt="" width="118" height="118" /></div>
301
+ </li><li id="text-448953174" class="widget widget_text "> <div class="textwidget"><a href="http://www.recipeboy.com/" target="_blank"><img class="aligncenter size-full wp-image-16317" title="recipeboy125X125[1]" src="http://www.recipegirl.com/wp-content/uploads/2011/05/recipeboy125X12511.png" alt="" width="125" height="125" /></a></div>
302
+ </li><li id="text-448953178" class="widget widget_text "> <div class="textwidget"><!-- Begin Cox Digital Solutions tag for "leftcolumn" Ad Space (120x240) ID #1000007180207 -->
303
+ <script type="text/javascript">
304
+ sr_adspace_id = 1000007180207;
305
+ sr_adspace_width = 120;
306
+ sr_adspace_height = 240;
307
+ sr_ad_new_window = true;
308
+ sr_adspace_type = "graphic";
309
+ </script>
310
+ <script type="text/javascript" src="http://ad.afy11.net/srad.js?azId=1000007180207">
311
+ </script>
312
+ <!-- End Cox Digital Solutions tag for "leftcolumn" Ad Space (120x240) ID #1000007180207 --></div>
313
+ </li><li id="text-448953181" class="widget widget_text "> <div class="textwidget"><iframe src="http://rcm.amazon.com/e/cm?t=reciandente-20&o=1&p=20&l=ur1&category=kitchen&banner=0Z0QS6ZP2XT90QHKRG82&f=ifr" width="120" height="90" scrolling="no" border="0" marginwidth="0" style="border:none;" frameborder="0"></iframe>
314
+ </div>
315
+ </li> </ul>
316
+
317
+ <ul id="rightsidebar">
318
+ <li id="text-448953152" class="widget widget_text"> <div class="textwidget"><!-- Begin Adify tag for "AllPagesRightBottomLeft" Ad Space (160x600) ID #1000002391607 -->
319
+ <script type="text/javascript">
320
+ sr_adspace_id = 1000002391607;
321
+ sr_adspace_width = 160;
322
+ sr_adspace_height = 600;
323
+ sr_ad_new_window = true;
324
+ sr_adspace_type = "graphic";
325
+ </script>
326
+ <script type="text/javascript" src="http://ad.afy11.net/srad.js?azId=1000002391607">
327
+ </script>
328
+ <!-- End Adify tag for "AllPagesRightBottomLeft" Ad Space (160x600) ID #1000002391607 --></div>
329
+ </li><li id="text-448953161" class="widget widget_text"> <div class="textwidget"><!-- Begin Adify tag for "Platefull Badge" Widget Space (159x80) ID #1000001305972 -->
330
+ <script type="text/javascript">
331
+ sr_widget_id = 1000001305972;
332
+ sr_widget_width = 159;
333
+ sr_widget_height = 80;
334
+ </script>
335
+ <script type="text/javascript" src="http://ad.afy11.net/srwidget.js?wId=1000001305972">
336
+ </script>
337
+ <!-- End Adify tag for "Platefull Badge" Widget Space (159x80) ID #1000001305972 --></div>
338
+ </li><li id="text-448953165" class="widget widget_text "> <div class="textwidget"><p><a href="http://www.goodbite.com/" target="_blank"><img src="/images/goodbite.jpg" width="160" height="125" alt="Good Bite Contributor" /></a></p>
339
+ <br/>
340
+ <p><img src="/images/babble.png" width="160" height="242" alt="Babble.com Top 100 Mom Food Bloggers" /></a></p></div>
341
+ </li><li id="text-448953168" class="widget widget_text "> <div class="textwidget"><div style="width: 140px !important; height: 170px !important; background:white !important; border: 1px solid #4D0A0B !important; overflow: hidden !important; text-align: center !important;"><a href="http://foodblogsearch.com" target="_blank">
342
+ <img src="http://foodblogsearch.com/images/fbs-button-140.png" style="border:0 !important; padding:0 !important; margin-bottom:5px !important;"/></a>
343
+ <!-- Google CSE Search Box Begins -->
344
+ <form action="http://foodblogsearch.com/food-blog-search-results.php" id="searchbox_003084314295129404805:72ozi9a0fjk" style="margin:0 !important; padding:0 !important;">
345
+ <input type="hidden" name="cx" value="003084314295129404805:72ozi9a0fjk" />
346
+ <input type="hidden" name="cof" value="FORID:11" /><input type="text" name="q" style="border:solid 1px #8A7C7D !important; width:128px !important; height:16px !important; " />
347
+ <input type="image" src="http://www.foodblogsearch.com/images/search-fb-button-2.png" value="Search Food Blogs" alt="Search Food Blogs" name="sa" title="Search Food Blogs" id="search-button" style="margin-top:4px !important;" /></form>
348
+ <script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=searchbox_003084314295129404805%3A72ozi9a0fjk"></script>
349
+ <!-- Google CSE Search Box Ends -->
350
+ </div></div>
351
+ </li><li id="text-448953180" class="widget widget_text "> <div class="textwidget"><iframe src="http://rcm.amazon.com/e/cm?t=reciandente-20&o=1&p=21&l=ur1&category=gift_certificates&banner=0RMFK66CHHDVZ1TV7N02&f=ifr" width="125" height="125" scrolling="no" border="0" marginwidth="0" style="border:none;" frameborder="0"></iframe>
352
+ </div>
353
+ </li><li id="text-448953179" class="widget widget_text "> <div class="textwidget"><!-- BEGIN BHBadge -->
354
+ <div class="bhbadge" id="bhbadge_Syndicated" style="display: inline;"><a href="http://www.blogher.com?from=bhsbadge" target="_blank"><img src="http://www.blogher.com/files/edbadge_syndicated.jpg" border="0" alt="Syndicated on BlogHer.com" title="Syndicated on BlogHer.com" width="120" height="100"></a></div>
355
+ <!-- END BHBadge --></div>
356
+ </li> </ul>
357
+
358
+ </div><!-- end #sidebar --><div class="clear"></div>
359
+
360
+ </div> <!-- end #wrapper -->
361
+
362
+ <div id="footer">
363
+ <div class="footerwrap">
364
+
365
+ <ul id="footerwidgets">
366
+ <li id="twitter-3" class="widget widget_twitter"><div><h4 class="widgettitle"><span class='twitterwidget twitterwidget-title'>twittering...</span></h4><ul><li><span class='entry-content'>I totally want to do this. RT <a href="http://twitter.com/wearsmanyhats" class="twitter-user" target="_blank">@wearsmanyhats</a>: How to Make a Chalkboard. It's easy, &#038; would make great last minute gift. <a href="http://t.co/bpVqlmAD" target="_blank">http://t.co/bpVqlmAD</a></span> <span class='entry-meta'><span class='time-meta'><a href="http://twitter.com/RecipeGirl/statuses/148969538980024320" target="_blank">about 1 hour ago</a></span> <span class='from-meta'>from <a href="http://www.hootsuite.com" rel="nofollow">HootSuite</a></span></span> <span class="intent-meta"><a href="http://twitter.com/intent/tweet?in_reply_to=148969538980024320" data-lang="en" class="in-reply-to" title="Reply" target="_blank">Reply</a><a href="http://twitter.com/intent/retweet?tweet_id=148969538980024320" data-lang="en" class="retweet" title="Retweet" target="_blank">Retweet</a><a href="http://twitter.com/intent/favorite?tweet_id=148969538980024320" data-lang="en" class="favorite" title="Favorite" target="_blank">Favorite</a></span></li><li><span class='entry-content'>Yee Hah! RT <a href="http://twitter.com/wearsmanyhats" class="twitter-user" target="_blank">@wearsmanyhats</a>: Girls &#038; guns&gt; RT <a href="http://twitter.com/cookincanuck" class="twitter-user" target="_blank">@cookincanuck</a>: A Girl Hunter weekend &#038; coming full circle. <a href="http://t.co/dsGyZmMP" target="_blank">http://t.co/dsGyZmMP</a> <a href="http://search.twitter.com/search?q=%23girlhunter" class="twitter-hashtag" target="_blank">#girlhunter</a></span> <span class='entry-meta'><span class='time-meta'><a href="http://twitter.com/RecipeGirl/statuses/148966970560225280" target="_blank">about 1 hour ago</a></span> <span class='from-meta'>from <a href="http://www.hootsuite.com" rel="nofollow">HootSuite</a></span></span> <span class="intent-meta"><a href="http://twitter.com/intent/tweet?in_reply_to=148966970560225280" data-lang="en" class="in-reply-to" title="Reply" target="_blank">Reply</a><a href="http://twitter.com/intent/retweet?tweet_id=148966970560225280" data-lang="en" class="retweet" title="Retweet" target="_blank">Retweet</a><a href="http://twitter.com/intent/favorite?tweet_id=148966970560225280" data-lang="en" class="favorite" title="Favorite" target="_blank">Favorite</a></span></li></ul><div class="follow-button"><a href="http://twitter.com/recipegirl" class="twitter-follow-button" title="Follow @recipegirl" data-lang="en" target="_blank">@recipegirl</a></div></div></li><li id="recent-comments" class="widget widget_rrm_recent_comments"><h4 class="widgettitle">Recent Comments</h4><ul><li><a href="http://www.recipegirl.com/2008/09/02/macadamia-nut-butter-toffee/#comment-59738"><strong>Lori Lange</strong> - I wouldn't try Splenda- I'm not sure how Splenda works out in candy recipes!</a></li>
367
+
368
+ <li><a href="http://www.recipegirl.com/2011/12/19/butterfinger-truffles/#comment-59737"><strong>Asmita</strong> - I am drooling. These look amazing!</a></li>
369
+
370
+ <li><a href="http://www.recipegirl.com/2011/06/02/chocolate-chip-cookie-dough-brownies/#comment-59736"><strong>Ashley M.</strong> - Of everything good and Holy! THESE LOOK DELICIOUS!!! Forgive me as I run for a napkin to clean up my</a></li>
371
+ </ul><!-- Recent Comments took 2.442 ms --></li><li id="popular-posts" class="widget widget_rrm_popular_posts"><h4 class="widgettitle">Most Popular Recipes</h4><ul><li><a href="http://www.recipegirl.com/2011/06/02/chocolate-chip-cookie-dough-brownies/" rel="bookmark" title="June 2, 2011">Chocolate Chip Cookie Dough Brownies</a></li>
372
+
373
+ <li><a href="http://www.recipegirl.com/2011/03/01/cinnamon-roll-pancakes/" rel="bookmark" title="March 1, 2011">Cinnamon Roll Pancakes</a></li>
374
+
375
+ <li><a href="http://www.recipegirl.com/2011/06/27/fireworks-cookies/" rel="bookmark" title="June 27, 2011">Fireworks Cookies</a></li>
376
+
377
+ <li><a href="http://www.recipegirl.com/2011/06/23/red-white-and-blue-sangria/" rel="bookmark" title="June 23, 2011">Red, White and Blue Sangria</a></li>
378
+
379
+ <li><a href="http://www.recipegirl.com/2011/06/30/triple-berry-salad-with-sugared-almonds/" rel="bookmark" title="June 30, 2011">Triple Berry Salad with Sugared Almonds</a></li>
380
+ </ul><!-- popular Posts took 4.623 ms --></li> </ul>
381
+ <div class="clear"></div>
382
+ </div>
383
+ </div> <!-- end #footer -->
384
+
385
+ <div class="subfooter">
386
+ <div class="footermenu">
387
+ <ul id="menu-footer" class="pages"><li id="menu-item-11508" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-11508"><a href="http://staging.recipegirl.com/">Home</a></li>
388
+ <li id="menu-item-11509" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-11509"><a href="http://www.recipegirl.com/about/">about</a></li>
389
+ <li id="menu-item-11511" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-11511"><a href="http://www.recipegirl.com/recipes/">recipes</a></li>
390
+ <li id="menu-item-18369" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-18369"><a href="http://www.recipegirl.com/archives/">Archives</a></li>
391
+ <li id="menu-item-11510" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-11510"><a href="http://www.recipegirl.com/contact/">Contact</a></li>
392
+ <li id="menu-item-13342" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-13342"><a href="http://www.recipegirl.com/work-with-me/">Work with Me</a></li>
393
+ <li id="menu-item-15840" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-15840"><a href="http://www.recipegirl.com/links/">links</a></li>
394
+ <li id="menu-item-17910" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-17910"><a href="http://www.recipegirl.com/shop/">Shop</a></li>
395
+ </ul> <ul class="social">
396
+ <li><a href="http://feeds.feedburner.com/TheRecipeGirl"><img src="http://www.recipegirl.com/wp-content/themes/recipegirl/images/rss-sm.png" width="16" height="16" alt="RSS" border="0" /></a></li>
397
+ <li><a href="http://www.twitter.com/recipegirl" target="_blank"><img src="http://www.recipegirl.com/wp-content/themes/recipegirl/images/twitter-sm.png" width="16" height="16" alt="Twitter" border="0" /></a></li>
398
+ <li><a href="https://www.facebook.com/pages/RecipeGirl/107332655959579" target="_blank"><img src="http://www.recipegirl.com/wp-content/themes/recipegirl/images/facebook-sm.png" width="16" height="16" alt="Facebook" border="0" /></a></li>
399
+ </ul>
400
+ </div>
401
+
402
+ <div class="copyright">
403
+ <p><strong>&copy;2006-2011 RecipeGirl.com&trade; All rights reserved.</strong> &nbsp;&nbsp; <a href="/terms/">Terms &amp; Conditions</a> | <a href="/privacy/">Privacy Policy</a><br/>
404
+ <small>RecipeGirl&trade; and the RecipeGirl logo are registered trademarks. Images and original content are sole property of Lori Lange and may not be used, copied or transmitted without author consent.
405
+ </small></p>
406
+ <p>Design by <a href="http://www.purrdesign.com" target="_blank">Purr</a>.</p>
407
+ </div>
408
+
409
+ <div id="text-448953175" class="footerad widget_text "> <div class="textwidget"><script type="text/javascript"><!--
410
+ google_ad_client = "pub-2452081970497677";
411
+ /* 728x90, created 6/17/11 */
412
+ google_ad_slot = "7926433864";
413
+ google_ad_width = 728;
414
+ google_ad_height = 90;
415
+ //-->
416
+ </script>
417
+ <script type="text/javascript"
418
+ src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
419
+ </script></div>
420
+ </div>
421
+ <script type='text/javascript' src='http://www.recipegirl.com/wp-content/plugins/contact-form-7/jquery.form.js?ver=2.52'></script>
422
+ <script type='text/javascript' src='http://www.recipegirl.com/wp-content/plugins/contact-form-7/scripts.js?ver=2.4.6'></script>
423
+ <script type='text/javascript' src='http://platform.twitter.com/widgets.js?ver=1.0.0'></script>
424
+
425
+ <!-- Cached by DB Cache Reloaded -->
426
+ </div>
427
+
428
+ <script type="text/javascript">
429
+
430
+ var _gaq = _gaq || [];
431
+ _gaq.push(['_setAccount', 'UA-8831555-1']);
432
+ _gaq.push(['_trackPageview']);
433
+
434
+ (function() {
435
+ var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
436
+ ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
437
+ var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
438
+ })();
439
+
440
+ </script>
441
+ </body></html><!-- hyper cache: 263a2f559716402a4008763a46b5699d 11-12-20 04:44:36 -->
@@ -60,7 +60,7 @@ module Distillery
60
60
  end
61
61
 
62
62
  describe 'remove_unlikely_elements!' do
63
- %w[combx comment community disqus extra foot header remark rss shoutbox sidebar sponsor ad-break agegate pagination pager popup].each do |klass|
63
+ %w[combx comment community disqus foot header remark rss shoutbox sidebar sponsor ad-break agegate pagination pager popup].each do |klass|
64
64
  it "removes any elements classed .#{klass}, as it is unlikely to be page content" do
65
65
  doc = document_of("<div class='#{klass}'>foo</div>", :remove_unlikely_elements!)
66
66
  doc.inner_html.should == html_of("")
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: distillery
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-12-17 00:00:00.000000000Z
12
+ date: 2011-12-20 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: nokogiri
16
- requirement: &2160714940 !ruby/object:Gem::Requirement
16
+ requirement: &2162966860 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>'
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '1.0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2160714940
24
+ version_requirements: *2162966860
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: slop
27
- requirement: &2160714440 !ruby/object:Gem::Requirement
27
+ requirement: &2162965640 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>'
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '1.0'
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *2160714440
35
+ version_requirements: *2162965640
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rspec
38
- requirement: &2160713980 !ruby/object:Gem::Requirement
38
+ requirement: &2162965140 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>'
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '2.0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *2160713980
46
+ version_requirements: *2162965140
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: guard
49
- requirement: &2160713600 !ruby/object:Gem::Requirement
49
+ requirement: &2162964740 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *2160713600
57
+ version_requirements: *2162964740
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: guard-rspec
60
- requirement: &2160713140 !ruby/object:Gem::Requirement
60
+ requirement: &2162964240 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '0'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *2160713140
68
+ version_requirements: *2162964240
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: ruby-debug19
71
- requirement: &2160712720 !ruby/object:Gem::Requirement
71
+ requirement: &2162963800 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *2160712720
79
+ version_requirements: *2162963800
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: rb-fsevent
82
- requirement: &2160712300 !ruby/object:Gem::Requirement
82
+ requirement: &2162963340 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,10 +87,10 @@ dependencies:
87
87
  version: '0'
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *2160712300
90
+ version_requirements: *2162963340
91
91
  - !ruby/object:Gem::Dependency
92
92
  name: growl
93
- requirement: &2160711880 !ruby/object:Gem::Requirement
93
+ requirement: &2162962900 !ruby/object:Gem::Requirement
94
94
  none: false
95
95
  requirements:
96
96
  - - ! '>='
@@ -98,7 +98,7 @@ dependencies:
98
98
  version: '0'
99
99
  type: :development
100
100
  prerelease: false
101
- version_requirements: *2160711880
101
+ version_requirements: *2162962900
102
102
  description: Distillery extracts the "content" portion out of an HTML document. It
103
103
  applies heuristics based on element type, location, class/id name and other attributes
104
104
  to try and find the content part of the HTML document and return it.
@@ -129,6 +129,7 @@ files:
129
129
  - spec/fixtures/bilays.html
130
130
  - spec/fixtures/bourbon_balls.html
131
131
  - spec/fixtures/bulgogi.html
132
+ - spec/fixtures/cheese_spread.html
132
133
  - spec/fixtures/clams_and_linguini.html
133
134
  - spec/fixtures/clouds_shining_moment.html
134
135
  - spec/fixtures/forest_ham.html
@@ -181,6 +182,7 @@ test_files:
181
182
  - spec/fixtures/bilays.html
182
183
  - spec/fixtures/bourbon_balls.html
183
184
  - spec/fixtures/bulgogi.html
185
+ - spec/fixtures/cheese_spread.html
184
186
  - spec/fixtures/clams_and_linguini.html
185
187
  - spec/fixtures/clouds_shining_moment.html
186
188
  - spec/fixtures/forest_ham.html