reactionifier 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore ADDED
@@ -0,0 +1 @@
1
+ *.gem
data/Gemfile ADDED
@@ -0,0 +1,2 @@
1
+ source :rubygems
2
+ gemspec
data/Gemfile.lock ADDED
@@ -0,0 +1,34 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ reactionifier (0.0.1)
5
+ nokogiri
6
+
7
+ GEM
8
+ remote: http://rubygems.org/
9
+ specs:
10
+ diff-lcs (1.2.4)
11
+ metaclass (0.0.1)
12
+ mini_portile (0.5.1)
13
+ mocha (0.14.0)
14
+ metaclass (~> 0.0.1)
15
+ nokogiri (1.6.0)
16
+ mini_portile (~> 0.5.0)
17
+ rake (10.1.0)
18
+ rspec (2.14.1)
19
+ rspec-core (~> 2.14.0)
20
+ rspec-expectations (~> 2.14.0)
21
+ rspec-mocks (~> 2.14.0)
22
+ rspec-core (2.14.5)
23
+ rspec-expectations (2.14.2)
24
+ diff-lcs (>= 1.1.3, < 2.0)
25
+ rspec-mocks (2.14.3)
26
+
27
+ PLATFORMS
28
+ ruby
29
+
30
+ DEPENDENCIES
31
+ mocha
32
+ rake
33
+ reactionifier!
34
+ rspec
data/README.md ADDED
@@ -0,0 +1,3 @@
1
+ Scrapes GIFs from reactiongifs.com.
2
+
3
+ Loosely based on https://github.com/richo/meminator
data/Rakefile ADDED
@@ -0,0 +1,9 @@
1
+ require 'rake'
2
+ require 'rspec/core/rake_task'
3
+
4
+ RSpec::Core::RakeTask.new(:spec) do |t|
5
+ t.pattern = "spec/**/*_spec.rb"
6
+ end
7
+
8
+ desc 'Run specs'
9
+ task :default => :spec
@@ -0,0 +1,33 @@
1
+ require 'net/http'
2
+ require 'nokogiri'
3
+
4
+ # Scrapes GIFs from reactiongifs.com
5
+
6
+ module Reactionifier
7
+
8
+ VERSION = '0.0.1'
9
+
10
+ class Error < Exception; end
11
+
12
+ class Reactionifier
13
+
14
+ def reaction_gif(mood)
15
+ reaction_gifs(mood).sample
16
+ end
17
+
18
+ def reaction_gifs(mood)
19
+ html = Nokogiri::HTML(fetch_html(mood))
20
+ imgs = html.css('.entry img')
21
+ imgs.map { |img| img.attribute('src').value }
22
+ end
23
+
24
+ def fetch_html(mood)
25
+ url = URI.parse(build_url(mood))
26
+ Net::HTTP.get(url.host, url.request_uri)
27
+ end
28
+
29
+ def build_url(mood)
30
+ "http://www.reactiongifs.com/?submit=Search&s=#{URI::encode(mood)}"
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,18 @@
1
+ Gem::Specification.new do |s|
2
+ s.name = "reactionifier"
3
+ s.version = "0.0.1"
4
+ s.authors = ["Stuart Campbell"]
5
+ s.email = ["stuart@harto.org"]
6
+ s.homepage = "http://github.com/harto/reactionifier"
7
+ s.summary = "Scrapes GIF URLs from reactiongifs.com"
8
+ s.description = s.summary
9
+
10
+ s.add_dependency "nokogiri"
11
+
12
+ s.add_development_dependency "mocha"
13
+ s.add_development_dependency "rake"
14
+ s.add_development_dependency "rspec"
15
+
16
+ s.files = `git ls-files`.split("\n")
17
+ s.require_paths = ["lib"]
18
+ end
@@ -0,0 +1,45 @@
1
+ require 'mocha/api'
2
+ require 'reactionifier'
3
+
4
+ RSpec.configure do |config|
5
+ config.mock_with :mocha
6
+ end
7
+
8
+ def load_html(filename)
9
+ IO.read(File.expand_path(File.dirname(__FILE__) + '/sample_data/' + filename))
10
+ end
11
+
12
+ gif_urls = ['http://www.reactiongifs.com/wp-content/uploads/2013/08/lol-duck.gif',
13
+ 'http://www.reactiongifs.com/wp-content/uploads/2013/08/Jack-Nicholson-lol.gif',
14
+ 'http://www.reactiongifs.com/wp-content/uploads/2013/08/charlie-murphy.gif',
15
+ 'http://www.reactiongifs.com/wp-content/uploads/2013/08/faceplant.gif']
16
+
17
+ describe Reactionifier do
18
+
19
+ reactionifier = Reactionifier::Reactionifier.new
20
+
21
+ it 'should generate a search URL' do
22
+ reactionifier.build_url('butts lol').should eq 'http://www.reactiongifs.com/?submit=Search&s=butts%20lol'
23
+ end
24
+
25
+ it 'should extract GIF URLs from search results' do
26
+ reactionifier.stubs :fetch_html => load_html('search_results.html')
27
+ reactionifier.reaction_gifs('lol').should eq gif_urls
28
+ end
29
+
30
+ it 'should extract a random GIF URL from search results' do
31
+ reactionifier.stubs :fetch_html => load_html('search_results.html')
32
+ gif_urls.should include reactionifier.reaction_gif('lol')
33
+ end
34
+
35
+ it 'should return an empty list where no results are found' do
36
+ reactionifier.stubs :fetch_html => load_html('no_results.html')
37
+ reactionifier.reaction_gifs('butts lol').should eq []
38
+ end
39
+
40
+ it 'should return nil where no result is found' do
41
+ reactionifier.stubs :fetch_html => load_html('no_results.html')
42
+ reactionifier.reaction_gif('butts lol').should be nil
43
+ end
44
+
45
+ end
@@ -0,0 +1,206 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head profile="http://gmpg.org/xfn/11"><script type="text/javascript">var NREUMQ=NREUMQ||[];NREUMQ.push(["mark","firstbyte",new Date().getTime()]);</script>
4
+ <title>You searched for butts lol - Reaction GIFs</title>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
6
+ <link rel="stylesheet" type="text/css" href="http://www.reactiongifs.com/wp-content/themes/skeptical/I.style.css.pagespeed.cf.I7wdVYOpac.css" media="screen"/>
7
+ <link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="http://www.reactiongifs.com/feed/"/>
8
+ <link rel="pingback" href="http://www.reactiongifs.com/xmlrpc.php"/>
9
+ <!-- This site is optimized with the Yoast WordPress SEO plugin v1.4.13 - http://yoast.com/wordpress/seo/ -->
10
+ <meta name="robots" content="noindex,follow"/>
11
+ <link rel="canonical" href="http://www.reactiongifs.com/search/butts+lol/"/>
12
+ <meta property='og:locale' content='en_US'/>
13
+ <meta property='og:type' content='website'/>
14
+ <meta property='og:title' content='You searched for butts lol - Reaction GIFs'/>
15
+ <meta property='og:url' content='http://www.reactiongifs.com/search/butts+lol/'/>
16
+ <meta property='og:site_name' content='Reaction GIFs'/>
17
+ <!-- / Yoast WordPress SEO plugin. -->
18
+ <script type="text/javascript">//<![CDATA[
19
+ var _gaq=_gaq||[];_gaq.push(['_setAccount','UA-89466-14']);_gaq.push(['_trackPageview','http://www.reactiongifs.com/?s=no-results:butts%20lol&cat=no-results']);(function(){var ga=document.createElement('script');ga.type='text/javascript';ga.async=true;ga.src=('https:'==document.location.protocol?'https://ssl':'http://www')+'.google-analytics.com/ga.js';var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(ga,s);})();
20
+ //]]></script>
21
+ <link rel="alternate" type="application/rss+xml" title="Reaction GIFs &raquo; Search Results for &#8220;butts lol&#8221; Feed" href="http://www.reactiongifs.com/search/butts+lol/feed/rss2/"/>
22
+ <script type='text/javascript' src='http://www.reactiongifs.com/wp-includes/js/jquery/jquery.js,qver=1.10.2.pagespeed.jm.iCH2ukpEYb.js'></script>
23
+ <script type='text/javascript' src='http://www.reactiongifs.com/wp-includes/js/jquery/jquery-migrate.min.js,qver=1.2.1.pagespeed.jm.mhpNjdU8Wl.js'></script>
24
+ <script type='text/javascript'>//<![CDATA[
25
+ var photocrati_ajax={"url":"http:\/\/www.reactiongifs.com\/photocrati_ajax","wp_site_url":"http:\/\/www.reactiongifs.com","wp_site_static_url":"http:\/\/www.reactiongifs.com"};
26
+ //]]></script>
27
+ <script type='text/javascript'>//<![CDATA[
28
+
29
+ //]]></script>
30
+ <script type='text/javascript' src='http://www.reactiongifs.com/wp-content/themes/skeptical/includes/js/superfish.js,qver=3.6.pagespeed.jm.z2U5Nueyxt.js'></script>
31
+ <script type='text/javascript'>//<![CDATA[
32
+ jQuery(document).ready(function(){jQuery('.nav > li ul').mouseover(function(){if(!jQuery(this).parent().hasClass('current_page_item')){jQuery(this).parent().addClass('current_page_item').addClass('fake');}});jQuery('.nav > li ul').mouseleave(function(){if(jQuery(this).parent().hasClass('fake')){jQuery(this).parent().removeClass('current_page_item').removeClass('fake');}});});
33
+ //]]></script>
34
+ <link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://www.reactiongifs.com/xmlrpc.php?rsd"/>
35
+ <link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://www.reactiongifs.com/wp-includes/wlwmanifest.xml"/>
36
+ <meta name="generator" content="WordPress 3.6"/>
37
+ <!-- <meta name="NextGEN" version="2.0.11" /> -->
38
+ <!-- Theme version -->
39
+ <meta name="generator" content="Skeptical 1.0.4"/>
40
+ <meta name="generator" content="WooFramework 5.5.1"/>
41
+ <!--[if IE 6]>
42
+ <script type="text/javascript" src="http://www.reactiongifs.com/wp-content/themes/skeptical/includes/js/pngfix.js"></script>
43
+ <script type="text/javascript" src="http://www.reactiongifs.com/wp-content/themes/skeptical/includes/js/menu.js"></script>
44
+ <link rel="stylesheet" type="text/css" media="all" href="http://www.reactiongifs.com/wp-content/themes/skeptical/css/ie6.css" />
45
+ <![endif]-->
46
+ <!--[if IE 7]>
47
+ <link rel="stylesheet" type="text/css" media="all" href="http://www.reactiongifs.com/wp-content/themes/skeptical/css/ie7.css" />
48
+ <![endif]-->
49
+ <!--[if IE 8]>
50
+ <link rel="stylesheet" type="text/css" media="all" href="http://www.reactiongifs.com/wp-content/themes/skeptical/css/ie8.css" />
51
+ <![endif]-->
52
+ <!-- Woo Custom Styling -->
53
+ <style type="text/css">a:link,a:visited{color:#697e09}</style>
54
+ <!-- Woo Custom Typography -->
55
+ <style type="text/css">body{font:12px/1.5em "Helvetica Neue",Helvetica,sans-serif;color:#333}#navigation,#navigation .nav a{font:bold 14px/1em "Helvetica Neue",Helvetica,sans-serif;color:#fff}.post .title,.post .title a:link,.post .title a:visited{font:bold 28px/1em "Helvetica Neue",Helvetica,sans-serif;color:#444}#main .post .post-meta,#main .post .post-meta a,.post .post-meta .post-date{font:12px/1em "Helvetica Neue",Helvetica,sans-serif;color:#fff}.entry,.entry p{font:14px/1.5em "Helvetica Neue",Helvetica,sans-serif;color:#555}h1,h2,h3,h4,h5,h6{font-family:"Helvetica Neue",Helvetica,sans-serif}.widget h3{font:bold 18px/1em "Helvetica Neue",Helvetica,sans-serif;color:#555}</style>
56
+ <!-- Alt Stylesheet -->
57
+ <link href="http://www.reactiongifs.com/wp-content/themes/skeptical/styles/I.blue.css.pagespeed.cf.THo3F9zH6e.css" rel="stylesheet" type="text/css"/>
58
+ <!-- Custom Favicon -->
59
+ <link rel="shortcut icon" href="http://www.reactiongifs.com/wp-content/uploads/2012/11/reactiongifs.com_.ico"/>
60
+ <!-- Options Panel Custom CSS -->
61
+ <style type="text/css">.post-shortlink{font-size:12px;font-family:"",Helvetica Neue,"",Helvetica,Arial,sans-serif;font-weight:700;background-color:#fffff;border:2px solid #dbdbdb;padding:5px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;color:#2d4567}.post-shortlink2{font-size:10px;font-family:"",Helvetica Neue,"",Helvetica,Arial,sans-serif;font-weight:400;background-color:#333;border:1px solid #666;padding:1px;color:#999}</style>
62
+ <!-- Woo Shortcodes CSS -->
63
+ <link href="http://www.reactiongifs.com/wp-content/themes/skeptical/functions/css/I.shortcodes.css.pagespeed.cf.njGg1u3a7B.css" rel="stylesheet" type="text/css"/>
64
+ <!-- Custom Stylesheet -->
65
+ <style>a:link,a:visited{color:#0067a5;text-decoration:none}a:hover{text-decoration:underline}.post-shortlink{font-size:12px;font-family:"",Helvetica Neue,"",Helvetica,Arial,sans-serif;font-weight:700;background-color:#fffff;border:2px solid #dbdbdb;padding:5px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;color:#2d4567}.styled-select select{font-size:14px;font-family:"",Helvetica Neue,"",Helvetica,Arial,sans-serif;background-color:#fffff;border:1px solid #dbdbdb;color:#333;width:300px;height:35px;padding:5px}.post-shortlink2{font-size:10px;font-family:"",Helvetica Neue,"",Helvetica,Arial,sans-serif;font-weight:400;background-color:#333;border:1px solid #666;padding:1px;color:#999}.post-shortlink-text{font-size:12px;font-family:"",Helvetica Neue,"",Helvetica,Arial,sans-serif;font-weight:700;padding:5px;color:#2d4567}.styled-select select{font-size:14px;font-family:"",Helvetica Neue,"",Helvetica,Arial,sans-serif;background-color:#fffff;border:1px solid #dbdbdb;color:#333;width:300px;height:35px;padding:5px}</style>
66
+ </head>
67
+ <body class="search search-no-results gecko">
68
+ <div id="wrapper">
69
+ <div id="header">
70
+ <div class="col-full">
71
+ <div id="logo">
72
+ <a href="http://www.reactiongifs.com" title="Say it with a GIF!">
73
+ <img src="http://www.reactiongifs.com/wp-content/uploads/2012/12/xreaction-gifs4.png.pagespeed.ic.3sbxZOnJoU.png" alt="Reaction GIFs"/>
74
+ </a>
75
+ <h1 class="site-title"><a href="http://www.reactiongifs.com">Reaction GIFs</a></h1>
76
+ <span class="site-description">Say it with a GIF!</span>
77
+ </div><!-- /#logo -->
78
+ <div id="navigation">
79
+ <ul id="main-nav" class="nav fl">
80
+ <li class="page_item"><a href="http://www.reactiongifs.com">Home</a></li>
81
+ <li class="page_item page-item-2"><a href="http://www.reactiongifs.com/about/">ABOUT</a></li>
82
+ <li class="page_item page-item-1366"><a href="http://www.reactiongifs.com/tags/">TAGS</a></li>
83
+ <li class="page_item page-item-9875"><a href="http://www.reactiongifs.com/gallery/">GALLERY</a>
84
+ <ul class='children'>
85
+ <li class="page_item page-item-912"><a href="http://www.reactiongifs.com/gallery/popcorn-gifs/">Popcorn Gifs</a></li>
86
+ <li class="page_item page-item-4115"><a href="http://www.reactiongifs.com/gallery/lol/">LOL</a></li>
87
+ <li class="page_item page-item-4877"><a href="http://www.reactiongifs.com/gallery/love/">Love</a></li>
88
+ <li class="page_item page-item-88"><a href="http://www.reactiongifs.com/gallery/no/">No</a></li>
89
+ <li class="page_item page-item-62"><a href="http://www.reactiongifs.com/gallery/yes/">Yes</a></li>
90
+ <li class="page_item page-item-292"><a href="http://www.reactiongifs.com/gallery/omg/">OMG!</a></li>
91
+ <li class="page_item page-item-366"><a href="http://www.reactiongifs.com/gallery/dance-party/">Dance Party</a></li>
92
+ <li class="page_item page-item-9444"><a href="http://www.reactiongifs.com/gallery/wtf/">WTF?</a></li>
93
+ </ul>
94
+ </li>
95
+ </ul><!-- /#nav -->
96
+ <ul class="rss fr">
97
+ <li class="sub-rss"><a href="http://www.reactiongifs.com/feed/">Subscribe to RSS</a></li>
98
+ </ul>
99
+ </div><!-- /#navigation -->
100
+ </div><!-- /.col-full -->
101
+ </div>
102
+ <!-- /#header -->
103
+ <div id="content" class="col-full">
104
+ <div id="main" class="col-left">
105
+ <div class="post not-found">
106
+ <p style="width:468px;">It looks like your search term isn't in our database. The good news is, we will probably add it in the future. Frequently searched for terms are added to the tag database regularly. Care to search again?</p>
107
+ <br/> <script type="text/javascript">google_ad_client="ca-pub-8726219848488817";google_ad_slot="1598538014";google_ad_width=468;google_ad_height=60;</script>
108
+ <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
109
+ </div><!-- /.post -->
110
+ </div><!-- /#main -->
111
+ <div id="sidebar" class="col-right">
112
+ <div class="primary">
113
+ <div class="adspace-widget widget">
114
+ <script type="text/javascript">google_ad_client="ca-pub-8726219848488817";google_ad_slot="2516363918";google_ad_width=300;google_ad_height=250;</script>
115
+ <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
116
+ </div><div id="text-2" class="widget widget_text"><h3>I am feeling . . .</h3> <div class="textwidget"><form><div class="styled-select">
117
+ <select onChange="if(this.selectedIndex!=0)
118
+ self.location=this.options[this.selectedIndex].value">
119
+ <option selected="selected">???
120
+ <option value="http://www.reactiongifs.com/tag/affectionate/">Affectionate
121
+ <option value="http://www.reactiongifs.com/tag/amused/">Amused
122
+ <option value="http://www.reactiongifs.com/tag/angry/">Angry
123
+ <option value="http://www.reactiongifs.com/tag/aroused/">Aroused
124
+ <option value="http://www.reactiongifs.com/tag/bored/">Bored
125
+ <option value="http://www.reactiongifs.com/tag/fail/">Clumsy
126
+ <option value="http://www.reactiongifs.com/tag/wtf/">Confused
127
+ <option value="http://www.reactiongifs.com/tag/dance/">Dancey
128
+ <option value="http://www.reactiongifs.com/tag/disappointed">Disappointed
129
+ <option value="http://www.reactiongifs.com/tag/disgust,/">Disgusted
130
+ <option value="http://www.reactiongifs.com/tag/do-not-want/">Disinterested
131
+ <option value="http://www.reactiongifs.com/tag/embarrassed/">Embarrassed
132
+ <option value="http://www.reactiongifs.com/tag/excited/">Excited
133
+ <option value="http://www.reactiongifs.com/tag/frustrated/">Frustrated
134
+ <option value="http://www.reactiongifs.com/tag/happy/">Happy
135
+ <option value="http://www.reactiongifs.com/tag/meh/">Indifferent
136
+ <option value="http://www.reactiongifs.com/tag/interested/">Interested
137
+ <option value="http://www.reactiongifs.com/tag/lazy/">Lazy
138
+ <option value="http://www.reactiongifs.com/tag/do-want/">Longing
139
+ <option value="http://www.reactiongifs.com/tag/proud/">Proud
140
+ <option value="http://www.reactiongifs.com/tag/sad/">Sad
141
+ <option value="http://www.reactiongifs.com/tag/satisfied/">Satisfied
142
+ <option value="http://www.reactiongifs.com/tag/scared/">Scared
143
+ <option value="http://www.reactiongifs.com/tag/shocked/">Shocked
144
+ <option value="http://www.reactiongifs.com/tag/skeptical/">Skeptical
145
+ <option value="http://www.reactiongifs.com/tag/sleepy/">Sleepy
146
+ <option value="http://www.reactiongifs.com/tag/surprised,/">Surprised
147
+ <option value="http://www.reactiongifs.com/tag/wild/">Wild
148
+ </select>
149
+ </div>
150
+ </form></div>
151
+ </div><div id="text-3" class="widget widget_text"><h3>My answer is . . .</h3> <div class="textwidget"><form><div class="styled-select">
152
+ <select onChange="if(this.selectedIndex!=0)
153
+ self.location=this.options[this.selectedIndex].value">
154
+ <option selected="selected">???
155
+ <option value="http://www.reactiongifs.com/tag/hell-yes/">Hell Yes!
156
+ <option value="http://www.reactiongifs.com/tag/yes/">Yes
157
+ <option value="http://www.reactiongifs.com/tag/unsure/">Undecided
158
+ <option value="http://www.reactiongifs.com/tag/no/">No
159
+ <option value="http://www.reactiongifs.com/tag/hell-no/">Hell No!
160
+ </select>
161
+ </div>
162
+ </form></div>
163
+ </div> <div id="woo_search-4" class="widget widget_woo_search"> <h3>Search</h3> <div class="search_main widget">
164
+ <form method="get" class="searchform" action="http://www.reactiongifs.com/">
165
+ <input type="text" class="field s" name="s" value="Search..." onfocus="if (this.value == 'Search...') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Search...';}"/>
166
+ <input type="submit" class="submit button" name="submit" value="Search"/>
167
+ </form>
168
+ <div class="fix"></div>
169
+ </div> </div>
170
+ </div>
171
+ </div><!-- /#sidebar -->
172
+ </div><!-- /#content -->
173
+ <div id="footer-widgets">
174
+ <div class="col-full">
175
+ <div class="block">
176
+ <div class="adspace-widget widget">
177
+ <div style="margin-left: 125px;"><script type="text/javascript">google_ad_client="ca-pub-8726219848488817";google_ad_slot="9627307129";google_ad_width=728;google_ad_height=90;</script>
178
+ <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script></div>
179
+ </div> </div>
180
+ <div class="block">
181
+ </div>
182
+ <div class="block">
183
+ </div>
184
+ <div class="block last">
185
+ </div>
186
+ <div class="fix"></div>
187
+ </div>
188
+ </div><!-- /#footer-widgets -->
189
+ <div id="footer">
190
+ <div class="footer-inside">
191
+ <div id="copyright" class="col-left">
192
+ <p>&copy; 2013 Reaction GIFs. All Rights Reserved. | <a href="http://www.pichacks.com">Make a Funny Face</a> | <a href="http://www.zentips.org">Zen Tips</a> | <a href="http://www.raddudes.com">Rad Dudes</a> | <a href="http://www.hungrytrees.com">Hungry Trees</a> | <a href="http://www.cutecatgifs.com">Cute Cat GIFs</a></p>
193
+ </div>
194
+ <div id="credit" class="col-right">
195
+ <p>
196
+ <!-- Powered by <a href="http://www.wordpress.org">WordPress</a>. Designed by <a href="http://www.woothemes.com"><img src="http://www.reactiongifs.com/wp-content/themes/skeptical/images/woothemes.png" width="74" height="19" alt="Woo Themes" /></a> -->
197
+ </p>
198
+ </div>
199
+ <div class="fix"></div>
200
+ </div>
201
+ </div><!-- /#footer -->
202
+ </div><!-- /#wrapper -->
203
+ <script>var eps_redirect_ajax_url="http://www.reactiongifs.com/wp-admin/admin-ajax.php"</script><script type="text/javascript">var _gaq=_gaq||[];_gaq.push(['_setAccount','UA-89466-14']);_gaq.push(['_trackPageview']);(function(){var ga=document.createElement('script');ga.type='text/javascript';ga.async=true;ga.src=('https:'==document.location.protocol?'https://ssl':'http://www')+'.google-analytics.com/ga.js';var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(ga,s);})();</script>
204
+ <script type="text/javascript">if(!NREUMQ.f){NREUMQ.f=function(){NREUMQ.push(["load",new Date().getTime()]);var e=document.createElement("script");e.type="text/javascript";e.src=(("http:"===document.location.protocol)?"http:":"https:")+"//"+"js-agent.newrelic.com/nr-100.js";document.body.appendChild(e);if(NREUMQ.a)NREUMQ.a();};NREUMQ.a=window.onload;window.onload=NREUMQ.f;};NREUMQ.push(["nrfj","beacon-2.newrelic.com","61ccc595da","2307645","NlMDZ0BVWBICABVfVw8ZIFBGXVkPTBAEV0oCXg==",0,182,new Date().getTime(),"","186e39c74a641671","","",""]);</script></body>
205
+ </html>
206
+ <!-- Served from: www.reactiongifs.com @ 2013-08-21 01:14:22 by W3 Total Cache -->
@@ -0,0 +1,303 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
+ <html xmlns="http://www.w3.org/1999/xhtml">
3
+ <head profile="http://gmpg.org/xfn/11"><script type="text/javascript">var NREUMQ=NREUMQ||[];NREUMQ.push(["mark","firstbyte",new Date().getTime()]);</script>
4
+ <title>You searched for lol - Reaction GIFs</title>
5
+ <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
6
+ <link rel="stylesheet" type="text/css" href="http://www.reactiongifs.com/wp-content/themes/skeptical/I.style.css.pagespeed.cf.I7wdVYOpac.css" media="screen"/>
7
+ <link rel="alternate" type="application/rss+xml" title="RSS 2.0" href="http://www.reactiongifs.com/feed/"/>
8
+ <link rel="pingback" href="http://www.reactiongifs.com/xmlrpc.php"/>
9
+ <!-- This site is optimized with the Yoast WordPress SEO plugin v1.4.13 - http://yoast.com/wordpress/seo/ -->
10
+ <meta name="robots" content="noindex,follow"/>
11
+ <link rel="canonical" href="http://www.reactiongifs.com/search/lol/"/>
12
+ <link rel="next" href="http://www.reactiongifs.com/search/lol/page/2/"/>
13
+ <meta property='og:locale' content='en_US'/>
14
+ <meta property='og:type' content='website'/>
15
+ <meta property='og:title' content='You searched for lol - Reaction GIFs'/>
16
+ <meta property='og:url' content='http://www.reactiongifs.com/search/lol/'/>
17
+ <meta property='og:site_name' content='Reaction GIFs'/>
18
+ <!-- / Yoast WordPress SEO plugin. -->
19
+ <script type="text/javascript">//<![CDATA[
20
+ var _gaq=_gaq||[];_gaq.push(['_setAccount','UA-89466-14']);_gaq.push(['_trackPageview','http://www.reactiongifs.com/?s=lol&cat=plus-5-results']);(function(){var ga=document.createElement('script');ga.type='text/javascript';ga.async=true;ga.src=('https:'==document.location.protocol?'https://ssl':'http://www')+'.google-analytics.com/ga.js';var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(ga,s);})();
21
+ //]]></script>
22
+ <link rel="alternate" type="application/rss+xml" title="Reaction GIFs &raquo; Search Results for &#8220;lol&#8221; Feed" href="http://www.reactiongifs.com/search/lol/feed/rss2/"/>
23
+ <script type='text/javascript' src='http://www.reactiongifs.com/wp-includes/js/jquery/jquery.js,qver=1.10.2.pagespeed.jm.iCH2ukpEYb.js'></script>
24
+ <script type='text/javascript' src='http://www.reactiongifs.com/wp-includes/js/jquery/jquery-migrate.min.js,qver=1.2.1.pagespeed.jm.mhpNjdU8Wl.js'></script>
25
+ <script type='text/javascript'>//<![CDATA[
26
+ var photocrati_ajax={"url":"http:\/\/www.reactiongifs.com\/photocrati_ajax","wp_site_url":"http:\/\/www.reactiongifs.com","wp_site_static_url":"http:\/\/www.reactiongifs.com"};
27
+ //]]></script>
28
+ <script type='text/javascript'>//<![CDATA[
29
+
30
+ //]]></script>
31
+ <script type='text/javascript' src='http://www.reactiongifs.com/wp-content/themes/skeptical/includes/js/superfish.js,qver=3.6.pagespeed.jm.z2U5Nueyxt.js'></script>
32
+ <script type='text/javascript'>//<![CDATA[
33
+ jQuery(document).ready(function(){jQuery('.nav > li ul').mouseover(function(){if(!jQuery(this).parent().hasClass('current_page_item')){jQuery(this).parent().addClass('current_page_item').addClass('fake');}});jQuery('.nav > li ul').mouseleave(function(){if(jQuery(this).parent().hasClass('fake')){jQuery(this).parent().removeClass('current_page_item').removeClass('fake');}});});
34
+ //]]></script>
35
+ <link rel="EditURI" type="application/rsd+xml" title="RSD" href="http://www.reactiongifs.com/xmlrpc.php?rsd"/>
36
+ <link rel="wlwmanifest" type="application/wlwmanifest+xml" href="http://www.reactiongifs.com/wp-includes/wlwmanifest.xml"/>
37
+ <meta name="generator" content="WordPress 3.6"/>
38
+ <!-- <meta name="NextGEN" version="2.0.11" /> -->
39
+ <!-- Theme version -->
40
+ <meta name="generator" content="Skeptical 1.0.4"/>
41
+ <meta name="generator" content="WooFramework 5.5.1"/>
42
+ <!--[if IE 6]>
43
+ <script type="text/javascript" src="http://www.reactiongifs.com/wp-content/themes/skeptical/includes/js/pngfix.js"></script>
44
+ <script type="text/javascript" src="http://www.reactiongifs.com/wp-content/themes/skeptical/includes/js/menu.js"></script>
45
+ <link rel="stylesheet" type="text/css" media="all" href="http://www.reactiongifs.com/wp-content/themes/skeptical/css/ie6.css" />
46
+ <![endif]-->
47
+ <!--[if IE 7]>
48
+ <link rel="stylesheet" type="text/css" media="all" href="http://www.reactiongifs.com/wp-content/themes/skeptical/css/ie7.css" />
49
+ <![endif]-->
50
+ <!--[if IE 8]>
51
+ <link rel="stylesheet" type="text/css" media="all" href="http://www.reactiongifs.com/wp-content/themes/skeptical/css/ie8.css" />
52
+ <![endif]-->
53
+ <!-- Woo Custom Styling -->
54
+ <style type="text/css">a:link,a:visited{color:#697e09}</style>
55
+ <!-- Woo Custom Typography -->
56
+ <style type="text/css">body{font:12px/1.5em "Helvetica Neue",Helvetica,sans-serif;color:#333}#navigation,#navigation .nav a{font:bold 14px/1em "Helvetica Neue",Helvetica,sans-serif;color:#fff}.post .title,.post .title a:link,.post .title a:visited{font:bold 28px/1em "Helvetica Neue",Helvetica,sans-serif;color:#444}#main .post .post-meta,#main .post .post-meta a,.post .post-meta .post-date{font:12px/1em "Helvetica Neue",Helvetica,sans-serif;color:#fff}.entry,.entry p{font:14px/1.5em "Helvetica Neue",Helvetica,sans-serif;color:#555}h1,h2,h3,h4,h5,h6{font-family:"Helvetica Neue",Helvetica,sans-serif}.widget h3{font:bold 18px/1em "Helvetica Neue",Helvetica,sans-serif;color:#555}</style>
57
+ <!-- Alt Stylesheet -->
58
+ <link href="http://www.reactiongifs.com/wp-content/themes/skeptical/styles/I.blue.css.pagespeed.cf.THo3F9zH6e.css" rel="stylesheet" type="text/css"/>
59
+ <!-- Custom Favicon -->
60
+ <link rel="shortcut icon" href="http://www.reactiongifs.com/wp-content/uploads/2012/11/reactiongifs.com_.ico"/>
61
+ <!-- Options Panel Custom CSS -->
62
+ <style type="text/css">.post-shortlink{font-size:12px;font-family:"",Helvetica Neue,"",Helvetica,Arial,sans-serif;font-weight:700;background-color:#fffff;border:2px solid #dbdbdb;padding:5px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;color:#2d4567}.post-shortlink2{font-size:10px;font-family:"",Helvetica Neue,"",Helvetica,Arial,sans-serif;font-weight:400;background-color:#333;border:1px solid #666;padding:1px;color:#999}</style>
63
+ <!-- Woo Shortcodes CSS -->
64
+ <link href="http://www.reactiongifs.com/wp-content/themes/skeptical/functions/css/I.shortcodes.css.pagespeed.cf.njGg1u3a7B.css" rel="stylesheet" type="text/css"/>
65
+ <!-- Custom Stylesheet -->
66
+ <style>a:link,a:visited{color:#0067a5;text-decoration:none}a:hover{text-decoration:underline}.post-shortlink{font-size:12px;font-family:"",Helvetica Neue,"",Helvetica,Arial,sans-serif;font-weight:700;background-color:#fffff;border:2px solid #dbdbdb;padding:5px;-webkit-border-radius:7px;-moz-border-radius:7px;border-radius:7px;color:#2d4567}.styled-select select{font-size:14px;font-family:"",Helvetica Neue,"",Helvetica,Arial,sans-serif;background-color:#fffff;border:1px solid #dbdbdb;color:#333;width:300px;height:35px;padding:5px}.post-shortlink2{font-size:10px;font-family:"",Helvetica Neue,"",Helvetica,Arial,sans-serif;font-weight:400;background-color:#333;border:1px solid #666;padding:1px;color:#999}.post-shortlink-text{font-size:12px;font-family:"",Helvetica Neue,"",Helvetica,Arial,sans-serif;font-weight:700;padding:5px;color:#2d4567}.styled-select select{font-size:14px;font-family:"",Helvetica Neue,"",Helvetica,Arial,sans-serif;background-color:#fffff;border:1px solid #dbdbdb;color:#333;width:300px;height:35px;padding:5px}</style>
67
+ </head>
68
+ <body class="search search-results gecko">
69
+ <div id="wrapper">
70
+ <div id="header">
71
+ <div class="col-full">
72
+ <div id="logo">
73
+ <a href="http://www.reactiongifs.com" title="Say it with a GIF!">
74
+ <img src="http://www.reactiongifs.com/wp-content/uploads/2012/12/xreaction-gifs4.png.pagespeed.ic.3sbxZOnJoU.png" alt="Reaction GIFs"/>
75
+ </a>
76
+ <h1 class="site-title"><a href="http://www.reactiongifs.com">Reaction GIFs</a></h1>
77
+ <span class="site-description">Say it with a GIF!</span>
78
+ </div><!-- /#logo -->
79
+ <div id="navigation">
80
+ <ul id="main-nav" class="nav fl">
81
+ <li class="page_item"><a href="http://www.reactiongifs.com">Home</a></li>
82
+ <li class="page_item page-item-2"><a href="http://www.reactiongifs.com/about/">ABOUT</a></li>
83
+ <li class="page_item page-item-1366"><a href="http://www.reactiongifs.com/tags/">TAGS</a></li>
84
+ <li class="page_item page-item-9875"><a href="http://www.reactiongifs.com/gallery/">GALLERY</a>
85
+ <ul class='children'>
86
+ <li class="page_item page-item-912"><a href="http://www.reactiongifs.com/gallery/popcorn-gifs/">Popcorn Gifs</a></li>
87
+ <li class="page_item page-item-4115"><a href="http://www.reactiongifs.com/gallery/lol/">LOL</a></li>
88
+ <li class="page_item page-item-4877"><a href="http://www.reactiongifs.com/gallery/love/">Love</a></li>
89
+ <li class="page_item page-item-88"><a href="http://www.reactiongifs.com/gallery/no/">No</a></li>
90
+ <li class="page_item page-item-62"><a href="http://www.reactiongifs.com/gallery/yes/">Yes</a></li>
91
+ <li class="page_item page-item-292"><a href="http://www.reactiongifs.com/gallery/omg/">OMG!</a></li>
92
+ <li class="page_item page-item-366"><a href="http://www.reactiongifs.com/gallery/dance-party/">Dance Party</a></li>
93
+ <li class="page_item page-item-9444"><a href="http://www.reactiongifs.com/gallery/wtf/">WTF?</a></li>
94
+ </ul>
95
+ </li>
96
+ </ul><!-- /#nav -->
97
+ <ul class="rss fr">
98
+ <li class="sub-rss"><a href="http://www.reactiongifs.com/feed/">Subscribe to RSS</a></li>
99
+ </ul>
100
+ </div><!-- /#navigation -->
101
+ </div><!-- /.col-full -->
102
+ </div>
103
+ <!-- /#header -->
104
+ <div id="content" class="col-full">
105
+ <div id="main" class="col-left">
106
+ <span class="archive_header">Search results for lol</span>
107
+ <!-- Post Starts -->
108
+ <div class="post-14361 post type-post status-publish format-standard hentry category-reactiongifs tag-chuckle tag-duck tag-hahaha tag-laugh tag-laughing tag-lol post">
109
+ <div class="post-meta col-left">
110
+ <span class="post-date">August 14, 2013<span class="bg">&nbsp;</span></span>
111
+ <ul>
112
+ <li class="post-category">Tags: <a href="http://www.reactiongifs.com/tag/chuckle/" rel="tag">chuckle</a>, <a href="http://www.reactiongifs.com/tag/duck/" rel="tag">duck</a>, <a href="http://www.reactiongifs.com/tag/hahaha/" rel="tag">hahaha</a>, <a href="http://www.reactiongifs.com/tag/laugh/" rel="tag">laugh</a>, <a href="http://www.reactiongifs.com/tag/laughing/" rel="tag">laughing</a>, <a href="http://www.reactiongifs.com/tag/lol/" rel="tag">LOL</a></li>
113
+ <li class="post-author">Shortlink:
114
+ <input size="23" class="post-shortlink2" type='text' value='http://reactiongifs.com/?p=14361' onclick='this.focus(); this.select();'/></li>
115
+ <li class="comments"><a href="http://www.reactiongifs.com/lol-duck/#respond" title="Comment on LOL Duck"><span class="dsq-postid" rel="14361 http://www.reactiongifs.com/?p=14361">Comments ( 0 )</span></a></li>
116
+ </ul>
117
+ </div><!-- /.meta -->
118
+ <div class="middle col-left">
119
+ <h2 class="title"><a href="http://www.reactiongifs.com/lol-duck/" rel="bookmark" title="LOL Duck">LOL Duck</a></h2>
120
+ <div class="entry">
121
+ <p><a href="http://www.reactiongifs.com/wp-content/uploads/2013/08/lol-duck.gif"><img class="alignnone size-full wp-image-14321" alt="LOL Duck" src="http://www.reactiongifs.com/wp-content/uploads/2013/08/lol-duck.gif" width="400" height="225"/></a></p>
122
+ </div>
123
+ <div class="post-more">
124
+ </div>
125
+ </div><!-- /.middle -->
126
+ <div class="fix"></div>
127
+ </div><!-- /.post -->
128
+ <!-- Post Starts -->
129
+ <div class="post-14349 post type-post status-publish format-standard hentry category-reactiongifs tag-busting-up tag-embarassed tag-funny tag-jack-nicholson tag-laugh tag-laughing tag-lol post">
130
+ <div class="post-meta col-left">
131
+ <span class="post-date">August 14, 2013<span class="bg">&nbsp;</span></span>
132
+ <ul>
133
+ <li class="post-category">Tags: <a href="http://www.reactiongifs.com/tag/busting-up/" rel="tag">busting up</a>, <a href="http://www.reactiongifs.com/tag/embarassed/" rel="tag">embarassed</a>, <a href="http://www.reactiongifs.com/tag/funny/" rel="tag">funny</a>, <a href="http://www.reactiongifs.com/tag/jack-nicholson/" rel="tag">Jack Nicholson</a>, <a href="http://www.reactiongifs.com/tag/laugh/" rel="tag">laugh</a>, <a href="http://www.reactiongifs.com/tag/laughing/" rel="tag">laughing</a>, <a href="http://www.reactiongifs.com/tag/lol/" rel="tag">LOL</a></li>
134
+ <li class="post-author">Shortlink:
135
+ <input size="23" class="post-shortlink2" type='text' value='http://reactiongifs.com/?p=14349' onclick='this.focus(); this.select();'/></li>
136
+ <li class="comments"><a href="http://www.reactiongifs.com/jack-lol/#respond" title="Comment on Jack LOL"><span class="dsq-postid" rel="14349 http://www.reactiongifs.com/?p=14349">Comments ( 0 )</span></a></li>
137
+ </ul>
138
+ </div><!-- /.meta -->
139
+ <div class="middle col-left">
140
+ <h2 class="title"><a href="http://www.reactiongifs.com/jack-lol/" rel="bookmark" title="Jack LOL">Jack LOL</a></h2>
141
+ <div class="entry">
142
+ <p><a href="http://www.reactiongifs.com/wp-content/uploads/2013/08/Jack-Nicholson-lol.gif"><img class="alignnone size-full wp-image-14319" alt="Jack Nicholson lol" src="http://www.reactiongifs.com/wp-content/uploads/2013/08/Jack-Nicholson-lol.gif" width="238" height="211"/></a></p>
143
+ </div>
144
+ <div class="post-more">
145
+ </div>
146
+ </div><!-- /.middle -->
147
+ <div class="fix"></div>
148
+ </div><!-- /.post -->
149
+ <!-- Post Starts -->
150
+ <div class="post-14345 post type-post status-publish format-standard hentry category-reactiongifs tag-busting-up tag-charlie-murphy tag-funny tag-haha tag-laughing tag-lol post">
151
+ <div class="post-meta col-left">
152
+ <span class="post-date">August 14, 2013<span class="bg">&nbsp;</span></span>
153
+ <ul>
154
+ <li class="post-category">Tags: <a href="http://www.reactiongifs.com/tag/busting-up/" rel="tag">busting up</a>, <a href="http://www.reactiongifs.com/tag/charlie-murphy/" rel="tag">Charlie Murphy</a>, <a href="http://www.reactiongifs.com/tag/funny/" rel="tag">funny</a>, <a href="http://www.reactiongifs.com/tag/haha/" rel="tag">haha</a>, <a href="http://www.reactiongifs.com/tag/laughing/" rel="tag">laughing</a>, <a href="http://www.reactiongifs.com/tag/lol/" rel="tag">LOL</a></li>
155
+ <li class="post-author">Shortlink:
156
+ <input size="23" class="post-shortlink2" type='text' value='http://reactiongifs.com/?p=14345' onclick='this.focus(); this.select();'/></li>
157
+ <li class="comments"><a href="http://www.reactiongifs.com/charlie-murphy-lol/#respond" title="Comment on Charlie Murphy LOL"><span class="dsq-postid" rel="14345 http://www.reactiongifs.com/?p=14345">Comments ( 0 )</span></a></li>
158
+ </ul>
159
+ </div><!-- /.meta -->
160
+ <div class="middle col-left">
161
+ <h2 class="title"><a href="http://www.reactiongifs.com/charlie-murphy-lol/" rel="bookmark" title="Charlie Murphy LOL">Charlie Murphy LOL</a></h2>
162
+ <div class="entry">
163
+ <p><a href="http://www.reactiongifs.com/wp-content/uploads/2013/08/charlie-murphy.gif"><img class="alignnone size-full wp-image-14315" alt="charlie-murphy" src="http://www.reactiongifs.com/wp-content/uploads/2013/08/charlie-murphy.gif" width="320" height="240"/></a></p>
164
+ <p>Check out the <a href="http://www.reactiongifs.com/tag/lol/">LOL</a> tag. These GIFs are perfect for when you think something is <a href="http://www.reactiongifs.com/tag/funny/">funny</a>.</p>
165
+ </div>
166
+ <div class="post-more">
167
+ </div>
168
+ </div><!-- /.middle -->
169
+ <div class="fix"></div>
170
+ </div><!-- /.post -->
171
+ <div style="width:499px; background:#ffffff; margin:0px 0px 35px 180px; padding:20px 0px 20px 20px; ">
172
+ <script type="text/javascript">google_ad_client="ca-pub-8726219848488817";google_ad_slot="2157793217";google_ad_width=300;google_ad_height=250;</script>
173
+ <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
174
+ </div>
175
+ <!-- Post Starts -->
176
+ <div class="post-14190 post type-post status-publish format-standard hentry category-reactiongifs tag-baby tag-faceplant tag-fall tag-i-give-up post">
177
+ <div class="post-meta col-left">
178
+ <span class="post-date">August 8, 2013<span class="bg">&nbsp;</span></span>
179
+ <ul>
180
+ <li class="post-category">Tags: <a href="http://www.reactiongifs.com/tag/baby/" rel="tag">baby</a>, <a href="http://www.reactiongifs.com/tag/faceplant/" rel="tag">faceplant</a>, <a href="http://www.reactiongifs.com/tag/fall/" rel="tag">fall</a>, <a href="http://www.reactiongifs.com/tag/i-give-up/" rel="tag">I give up</a></li>
181
+ <li class="post-author">Shortlink:
182
+ <input size="23" class="post-shortlink2" type='text' value='http://reactiongifs.com/?p=14190' onclick='this.focus(); this.select();'/></li>
183
+ <li class="comments"><a href="http://www.reactiongifs.com/baby-faceplant-lol/#respond" title="Comment on Baby Faceplant LOL"><span class="dsq-postid" rel="14190 http://www.reactiongifs.com/?p=14190">Comments ( 0 )</span></a></li>
184
+ </ul>
185
+ </div><!-- /.meta -->
186
+ <div class="middle col-left">
187
+ <h2 class="title"><a href="http://www.reactiongifs.com/baby-faceplant-lol/" rel="bookmark" title="Baby Faceplant LOL">Baby Faceplant LOL</a></h2>
188
+ <div class="entry">
189
+ <p><a href="http://www.reactiongifs.com/wp-content/uploads/2013/08/faceplant.gif"><img class="alignnone size-full wp-image-14152" alt="Faceplant Baby" src="http://www.reactiongifs.com/wp-content/uploads/2013/08/faceplant.gif" width="260" height="146"/></a></p>
190
+ </div>
191
+ <div class="post-more">
192
+ </div>
193
+ </div><!-- /.middle -->
194
+ <div class="fix"></div>
195
+ </div><!-- /.post -->
196
+ <script type="text/javascript">//<![CDATA[
197
+ var disqus_shortname='reactiongifs';(function(){var nodes=document.getElementsByTagName('span');for(var i=0,url;i<nodes.length;i++){if(nodes[i].className.indexOf('dsq-postid')!=-1){nodes[i].parentNode.setAttribute('data-disqus-identifier',nodes[i].getAttribute('rel'));url=nodes[i].parentNode.href.split('#',1);if(url.length==1){url=url[0];}
198
+ else{url=url[1];}
199
+ nodes[i].parentNode.href=url+'#disqus_thread';}}
200
+ var s=document.createElement('script');s.async=true;s.type='text/javascript';s.src='//'+'disqus.com/forums/'+disqus_shortname+'/count.js';(document.getElementsByTagName('HEAD')[0]||document.getElementsByTagName('BODY')[0]).appendChild(s);}());
201
+ //]]></script>
202
+ <div class="nav-entries">
203
+ <div class="nav-prev fl"></div>
204
+ <div class="nav-next fr"><a href="http://www.reactiongifs.com/page/2/?submit=Search&#038;s=lol"> Older Entries &raquo;</a></div>
205
+ <div class="fix"></div>
206
+ </div>
207
+ </div><!-- /#main -->
208
+ <div id="sidebar" class="col-right">
209
+ <div class="primary">
210
+ <div class="adspace-widget widget">
211
+ <script type="text/javascript">google_ad_client="ca-pub-8726219848488817";google_ad_slot="2516363918";google_ad_width=300;google_ad_height=250;</script>
212
+ <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script>
213
+ </div><div id="text-2" class="widget widget_text"><h3>I am feeling . . .</h3> <div class="textwidget"><form><div class="styled-select">
214
+ <select onChange="if(this.selectedIndex!=0)
215
+ self.location=this.options[this.selectedIndex].value">
216
+ <option selected="selected">???
217
+ <option value="http://www.reactiongifs.com/tag/affectionate/">Affectionate
218
+ <option value="http://www.reactiongifs.com/tag/amused/">Amused
219
+ <option value="http://www.reactiongifs.com/tag/angry/">Angry
220
+ <option value="http://www.reactiongifs.com/tag/aroused/">Aroused
221
+ <option value="http://www.reactiongifs.com/tag/bored/">Bored
222
+ <option value="http://www.reactiongifs.com/tag/fail/">Clumsy
223
+ <option value="http://www.reactiongifs.com/tag/wtf/">Confused
224
+ <option value="http://www.reactiongifs.com/tag/dance/">Dancey
225
+ <option value="http://www.reactiongifs.com/tag/disappointed">Disappointed
226
+ <option value="http://www.reactiongifs.com/tag/disgust,/">Disgusted
227
+ <option value="http://www.reactiongifs.com/tag/do-not-want/">Disinterested
228
+ <option value="http://www.reactiongifs.com/tag/embarrassed/">Embarrassed
229
+ <option value="http://www.reactiongifs.com/tag/excited/">Excited
230
+ <option value="http://www.reactiongifs.com/tag/frustrated/">Frustrated
231
+ <option value="http://www.reactiongifs.com/tag/happy/">Happy
232
+ <option value="http://www.reactiongifs.com/tag/meh/">Indifferent
233
+ <option value="http://www.reactiongifs.com/tag/interested/">Interested
234
+ <option value="http://www.reactiongifs.com/tag/lazy/">Lazy
235
+ <option value="http://www.reactiongifs.com/tag/do-want/">Longing
236
+ <option value="http://www.reactiongifs.com/tag/proud/">Proud
237
+ <option value="http://www.reactiongifs.com/tag/sad/">Sad
238
+ <option value="http://www.reactiongifs.com/tag/satisfied/">Satisfied
239
+ <option value="http://www.reactiongifs.com/tag/scared/">Scared
240
+ <option value="http://www.reactiongifs.com/tag/shocked/">Shocked
241
+ <option value="http://www.reactiongifs.com/tag/skeptical/">Skeptical
242
+ <option value="http://www.reactiongifs.com/tag/sleepy/">Sleepy
243
+ <option value="http://www.reactiongifs.com/tag/surprised,/">Surprised
244
+ <option value="http://www.reactiongifs.com/tag/wild/">Wild
245
+ </select>
246
+ </div>
247
+ </form></div>
248
+ </div><div id="text-3" class="widget widget_text"><h3>My answer is . . .</h3> <div class="textwidget"><form><div class="styled-select">
249
+ <select onChange="if(this.selectedIndex!=0)
250
+ self.location=this.options[this.selectedIndex].value">
251
+ <option selected="selected">???
252
+ <option value="http://www.reactiongifs.com/tag/hell-yes/">Hell Yes!
253
+ <option value="http://www.reactiongifs.com/tag/yes/">Yes
254
+ <option value="http://www.reactiongifs.com/tag/unsure/">Undecided
255
+ <option value="http://www.reactiongifs.com/tag/no/">No
256
+ <option value="http://www.reactiongifs.com/tag/hell-no/">Hell No!
257
+ </select>
258
+ </div>
259
+ </form></div>
260
+ </div> <div id="woo_search-4" class="widget widget_woo_search"> <h3>Search</h3> <div class="search_main widget">
261
+ <form method="get" class="searchform" action="http://www.reactiongifs.com/">
262
+ <input type="text" class="field s" name="s" value="Search..." onfocus="if (this.value == 'Search...') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Search...';}"/>
263
+ <input type="submit" class="submit button" name="submit" value="Search"/>
264
+ </form>
265
+ <div class="fix"></div>
266
+ </div> </div>
267
+ </div>
268
+ </div><!-- /#sidebar -->
269
+ </div><!-- /#content -->
270
+ <div id="footer-widgets">
271
+ <div class="col-full">
272
+ <div class="block">
273
+ <div class="adspace-widget widget">
274
+ <div style="margin-left: 125px;"><script type="text/javascript">google_ad_client="ca-pub-8726219848488817";google_ad_slot="9627307129";google_ad_width=728;google_ad_height=90;</script>
275
+ <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"></script></div>
276
+ </div> </div>
277
+ <div class="block">
278
+ </div>
279
+ <div class="block">
280
+ </div>
281
+ <div class="block last">
282
+ </div>
283
+ <div class="fix"></div>
284
+ </div>
285
+ </div><!-- /#footer-widgets -->
286
+ <div id="footer">
287
+ <div class="footer-inside">
288
+ <div id="copyright" class="col-left">
289
+ <p>&copy; 2013 Reaction GIFs. All Rights Reserved. | <a href="http://www.pichacks.com">Make a Funny Face</a> | <a href="http://www.zentips.org">Zen Tips</a> | <a href="http://www.raddudes.com">Rad Dudes</a> | <a href="http://www.hungrytrees.com">Hungry Trees</a> | <a href="http://www.cutecatgifs.com">Cute Cat GIFs</a></p>
290
+ </div>
291
+ <div id="credit" class="col-right">
292
+ <p>
293
+ <!-- Powered by <a href="http://www.wordpress.org">WordPress</a>. Designed by <a href="http://www.woothemes.com"><img src="http://www.reactiongifs.com/wp-content/themes/skeptical/images/woothemes.png" width="74" height="19" alt="Woo Themes" /></a> -->
294
+ </p>
295
+ </div>
296
+ <div class="fix"></div>
297
+ </div>
298
+ </div><!-- /#footer -->
299
+ </div><!-- /#wrapper -->
300
+ <script>var eps_redirect_ajax_url="http://www.reactiongifs.com/wp-admin/admin-ajax.php"</script><script type="text/javascript">var _gaq=_gaq||[];_gaq.push(['_setAccount','UA-89466-14']);_gaq.push(['_trackPageview']);(function(){var ga=document.createElement('script');ga.type='text/javascript';ga.async=true;ga.src=('https:'==document.location.protocol?'https://ssl':'http://www')+'.google-analytics.com/ga.js';var s=document.getElementsByTagName('script')[0];s.parentNode.insertBefore(ga,s);})();</script>
301
+ <script type="text/javascript">if(!NREUMQ.f){NREUMQ.f=function(){NREUMQ.push(["load",new Date().getTime()]);var e=document.createElement("script");e.type="text/javascript";e.src=(("http:"===document.location.protocol)?"http:":"https:")+"//"+"js-agent.newrelic.com/nr-100.js";document.body.appendChild(e);if(NREUMQ.a)NREUMQ.a();};NREUMQ.a=window.onload;window.onload=NREUMQ.f;};NREUMQ.push(["nrfj","beacon-2.newrelic.com","61ccc595da","2307645","NlMDZ0BVWBICABVfVw8ZIFBGXVkPTBAEV0oCXg==",0,494,new Date().getTime(),"","","","",""]);</script></body>
302
+ </html>
303
+ <!-- Served from: www.reactiongifs.com @ 2013-08-21 00:53:25 by W3 Total Cache -->
metadata ADDED
@@ -0,0 +1,119 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: reactionifier
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Stuart Campbell
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2013-08-21 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: nokogiri
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :runtime
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: '0'
30
+ - !ruby/object:Gem::Dependency
31
+ name: mocha
32
+ requirement: !ruby/object:Gem::Requirement
33
+ none: false
34
+ requirements:
35
+ - - ! '>='
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ type: :development
39
+ prerelease: false
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: rake
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: rspec
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ! '>='
68
+ - !ruby/object:Gem::Version
69
+ version: '0'
70
+ type: :development
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ! '>='
76
+ - !ruby/object:Gem::Version
77
+ version: '0'
78
+ description: Scrapes GIF URLs from reactiongifs.com
79
+ email:
80
+ - stuart@harto.org
81
+ executables: []
82
+ extensions: []
83
+ extra_rdoc_files: []
84
+ files:
85
+ - .gitignore
86
+ - Gemfile
87
+ - Gemfile.lock
88
+ - README.md
89
+ - Rakefile
90
+ - lib/reactionifier.rb
91
+ - reactionifier.gemspec
92
+ - spec/reactionifier_spec.rb
93
+ - spec/sample_data/no_results.html
94
+ - spec/sample_data/search_results.html
95
+ homepage: http://github.com/harto/reactionifier
96
+ licenses: []
97
+ post_install_message:
98
+ rdoc_options: []
99
+ require_paths:
100
+ - lib
101
+ required_ruby_version: !ruby/object:Gem::Requirement
102
+ none: false
103
+ requirements:
104
+ - - ! '>='
105
+ - !ruby/object:Gem::Version
106
+ version: '0'
107
+ required_rubygems_version: !ruby/object:Gem::Requirement
108
+ none: false
109
+ requirements:
110
+ - - ! '>='
111
+ - !ruby/object:Gem::Version
112
+ version: '0'
113
+ requirements: []
114
+ rubyforge_project:
115
+ rubygems_version: 1.8.23
116
+ signing_key:
117
+ specification_version: 3
118
+ summary: Scrapes GIF URLs from reactiongifs.com
119
+ test_files: []