readability_parser 0.0.3 → 0.0.4
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +6 -14
- checksums.yaml.gz.sig +1 -4
- data.tar.gz.sig +0 -0
- data/Gemfile +12 -0
- data/README.md +11 -8
- data/Rakefile +11 -1
- data/lib/readability_parser.rb +3 -2
- data/lib/readability_parser/api/content.rb +2 -2
- data/lib/readability_parser/client.rb +1 -1
- data/lib/readability_parser/configuration.rb +6 -6
- data/lib/readability_parser/connection.rb +9 -5
- data/lib/readability_parser/error.rb +5 -4
- data/lib/readability_parser/request.rb +2 -2
- data/lib/readability_parser/version.rb +1 -1
- data/readability_parser.gemspec +0 -2
- data/spec/{readability → readability_parser}/api/content_spec.rb +2 -2
- data/spec/{readability → readability_parser}/article_spec.rb +2 -2
- data/spec/{readability → readability_parser}/client_spec.rb +1 -1
- data/spec/{readability → readability_parser}/error_spec.rb +2 -2
- data/spec/{readability_spec.rb → readability_parser_spec.rb} +1 -1
- data/spec/spec_helper.rb +11 -0
- metadata +44 -66
- metadata.gz.sig +0 -0
- data/spec/helper.rb +0 -2
checksums.yaml
CHANGED
@@ -1,15 +1,7 @@
|
|
1
1
|
---
|
2
|
-
|
3
|
-
metadata.gz:
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
metadata.gz: !binary |-
|
9
|
-
NDBlZDhjMWJhMDVjNGQzNmFjMzlkODExYzA2YTc3YjYyMzQzNjI2ZDFiMjBh
|
10
|
-
OTQ1MjllNGY4ZTJjMDg0MjYyOTMwYThmMGQ5M2VkZDRjYjM2NjMyMzRmMTkw
|
11
|
-
MDY0MDllOTdjMjY3ODcwYTVjMGQzN2UyOGZkNzE4NGRkMzNhNzg=
|
12
|
-
data.tar.gz: !binary |-
|
13
|
-
Y2U0ZDk2YzlhNWU5M2YxYzgzNDQ3OTkzNjMxNmMzN2M1NDUwMzBhYzMyOGUx
|
14
|
-
ZGQwZjczMGFkODQxZGI2N2U0M2I3MTZhZDM5ODE2ZDg5MDM3NmM2YTQ5M2Mx
|
15
|
-
OTEyZDU2Yjc2YzdmYTI0YTU3MmUyNzAzMzIyNDEwMGU1MDA2YmY=
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 47f6b90c7716327174578dac48fe345df877f4f1
|
4
|
+
data.tar.gz: 0e1c6fb43575a4fde7f8c01f028e67902ffb1412
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: d41c90cd7d69bec7c11911accf93b6815f35ac63724764e7df9a3b71f397ee2567a42f8fe02bd2daf971734b34ac2239ab7c1d52e52f7bb0f1a4466f6b46fea4
|
7
|
+
data.tar.gz: 49ec4eb921d986e2a11620059a85a7063d22170f4a4883f86c9703f6a77e5f9bfdecf6e84fd8c429d9ddd554d256df34c750f536e79f2f2874781061013356df
|
checksums.yaml.gz.sig
CHANGED
data.tar.gz.sig
CHANGED
Binary file
|
data/Gemfile
CHANGED
@@ -1,5 +1,17 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
|
+
gem 'bundler', '~> 1.3'
|
4
|
+
gem 'rake'
|
3
5
|
gem 'yard'
|
4
6
|
|
7
|
+
group :development do
|
8
|
+
gem 'pry'
|
9
|
+
gem 'debugger'
|
10
|
+
end
|
11
|
+
|
12
|
+
group :test do
|
13
|
+
gem 'coveralls', require: false
|
14
|
+
gem 'rspec', '>= 2.14'
|
15
|
+
end
|
16
|
+
|
5
17
|
gemspec
|
data/README.md
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
# Readability Parser
|
2
|
-
A tiny ruby wrapper for Readability's
|
2
|
+
A tiny ruby wrapper for Readability's [Parser API](http://www.readability.com/developers/api/parser)
|
3
3
|
|
4
4
|
## Installation
|
5
5
|
Add this line to your application's Gemfile:
|
@@ -11,12 +11,15 @@ And then execute:
|
|
11
11
|
bundle install
|
12
12
|
|
13
13
|
## Configuration
|
14
|
+
|
14
15
|
Single token usage:
|
16
|
+
|
15
17
|
```ruby
|
16
18
|
ReadabilityParser.api_token = READABILITY_API_TOKEN
|
17
19
|
```
|
18
20
|
|
19
21
|
or set multiple options with a block:
|
22
|
+
|
20
23
|
```ruby
|
21
24
|
ReadabilityParser.configure do |readability|
|
22
25
|
readability.api_token = READABILITY_API_TOKEN,
|
@@ -27,16 +30,17 @@ end
|
|
27
30
|
Make sure to set `READABILITY_API_TOKEN` in your environement variables. You can get an API key by contacting Readability's team directly, more information on their [api documentation page](https://www.readability.com/developers/api).
|
28
31
|
|
29
32
|
Multiple tokens or multithreaded usage:
|
33
|
+
|
30
34
|
```ruby
|
31
|
-
client = ReadabilityParser::Client.new(
|
32
|
-
:api_token => READABILITY_API_TOKEN
|
33
|
-
)
|
35
|
+
client = ReadabilityParser::Client.new(api_token: READABILITY_API_TOKEN)
|
34
36
|
```
|
35
37
|
|
36
38
|
## Usage
|
37
39
|
|
38
40
|
### Parse
|
39
|
-
|
41
|
+
|
42
|
+
Parse a webpage and return its main content:
|
43
|
+
|
40
44
|
```ruby
|
41
45
|
article = ReadabilityParser.parse("http://www.paulgraham.com/really.html")
|
42
46
|
=> #<ReadabilityParser::Article domain="www.paulgraham.com", next_page_id=nil, url="http://www.paulgraham.com/really.html", short_url="http://rdd.me/vki6sx0x", author=nil, excerpt="Want to start a startup? Get funded by Y Combinator . October 2009 (This essay is derived from a talk at the 2009 Startup School.) I wasn't sure what to talk about at Startup School, so I decided to...", direction="ltr", word_count=4982, total_pages=0, content="<div><td width="455"><img src="http://ep.yimg.com/ca/I/paulgraham_2135_250213" width="243" border="0" hspace="0" vspace="0" alt="What Startups Are Really Like"> ...", date_published=nil, dek=nil, lead_image_url=nil, title="What Startups Are Really Like", rendered_pages=1>
|
@@ -53,11 +57,10 @@ article.date_published
|
|
53
57
|
article.next_page_id
|
54
58
|
article.rendered_pages
|
55
59
|
```
|
60
|
+
|
56
61
|
### Format
|
57
|
-
You may specify the response format to `:json` or `:xml`, default to `:json`. Either way, the response will be parsed and returned as a `ReadabilityParser::Article` object.
|
58
62
|
|
59
|
-
|
60
|
-
- Complete test suite
|
63
|
+
You may specify the response format to `:json` or `:xml`, default to `:json`. Either way, the response will be parsed and returned as a `ReadabilityParser::Article` object.
|
61
64
|
|
62
65
|
## Contributing
|
63
66
|
|
data/Rakefile
CHANGED
@@ -1 +1,11 @@
|
|
1
|
-
require
|
1
|
+
require 'bundler'
|
2
|
+
require 'rake'
|
3
|
+
require 'bundler/gem_tasks'
|
4
|
+
require 'rspec/core/rake_task'
|
5
|
+
|
6
|
+
task default: :spec
|
7
|
+
|
8
|
+
desc 'Run all specs'
|
9
|
+
RSpec::Core::RakeTask.new(:spec) do |task|
|
10
|
+
task.pattern = 'spec/**/*_spec.rb'
|
11
|
+
end
|
data/lib/readability_parser.rb
CHANGED
@@ -3,11 +3,12 @@ require 'readability_parser/client'
|
|
3
3
|
|
4
4
|
module ReadabilityParser
|
5
5
|
extend Configuration
|
6
|
+
|
6
7
|
class << self
|
7
8
|
# Alias for ReadabilityParser::Client.new
|
8
9
|
#
|
9
10
|
# @return [ReadabilityParser::Client]
|
10
|
-
def new(options={})
|
11
|
+
def new(options = {})
|
11
12
|
ReadabilityParser::Client.new(options)
|
12
13
|
end
|
13
14
|
|
@@ -17,7 +18,7 @@ module ReadabilityParser
|
|
17
18
|
new.send(method, *args, &block)
|
18
19
|
end
|
19
20
|
|
20
|
-
def respond_to?(method, include_private=false)
|
21
|
+
def respond_to?(method, include_private = false)
|
21
22
|
new.respond_to?(method, include_private) || super(method, include_private)
|
22
23
|
end
|
23
24
|
end
|
@@ -10,8 +10,8 @@ module ReadabilityParser
|
|
10
10
|
#
|
11
11
|
# @param url [String] The URL of an article to return the content for
|
12
12
|
# @return [ReadabilityParser::Article]
|
13
|
-
def parse(url, options={})
|
14
|
-
params = {:url
|
13
|
+
def parse(url, options = {})
|
14
|
+
params = { url: url }
|
15
15
|
response = get('', params.merge(options))
|
16
16
|
|
17
17
|
ReadabilityParser::Article.new(response)
|
@@ -7,7 +7,7 @@ module ReadabilityParser
|
|
7
7
|
class Client
|
8
8
|
attr_accessor *Configuration::VALID_CONFIG_KEYS
|
9
9
|
|
10
|
-
def initialize(options={})
|
10
|
+
def initialize(options = {})
|
11
11
|
options = ReadabilityParser.options.merge(options)
|
12
12
|
Configuration::VALID_OPTIONS_KEYS.each do |key|
|
13
13
|
send("#{key}=", options[key])
|
@@ -3,13 +3,13 @@ require 'readability_parser/version'
|
|
3
3
|
module ReadabilityParser
|
4
4
|
module Configuration
|
5
5
|
VALID_CONNECTION_KEYS = [:api_endpoint, :user_agent].freeze
|
6
|
-
VALID_OPTIONS_KEYS
|
7
|
-
VALID_CONFIG_KEYS
|
6
|
+
VALID_OPTIONS_KEYS = [:api_token, :format].freeze
|
7
|
+
VALID_CONFIG_KEYS = VALID_CONNECTION_KEYS + VALID_OPTIONS_KEYS
|
8
8
|
|
9
|
-
DEFAULT_API_ENDPOINT
|
10
|
-
DEFAULT_USER_AGENT
|
11
|
-
DEFAULT_API_TOKEN
|
12
|
-
DEFAULT_FORMAT
|
9
|
+
DEFAULT_API_ENDPOINT = "https://readability.com/api/content/v1/parser"
|
10
|
+
DEFAULT_USER_AGENT = "ReadabilityParser Ruby Gem #{ReadabilityParser::VERSION}".freeze
|
11
|
+
DEFAULT_API_TOKEN = nil
|
12
|
+
DEFAULT_FORMAT = :json
|
13
13
|
|
14
14
|
attr_accessor *VALID_CONFIG_KEYS
|
15
15
|
|
@@ -3,6 +3,7 @@ require 'faraday_middleware'
|
|
3
3
|
|
4
4
|
module ReadabilityParser
|
5
5
|
module Connection
|
6
|
+
|
6
7
|
# Instantiate a Faraday::Connection
|
7
8
|
# @private
|
8
9
|
private
|
@@ -10,16 +11,19 @@ module ReadabilityParser
|
|
10
11
|
# Returns a Faraday::Connection object
|
11
12
|
#
|
12
13
|
# @return [Faraday::Connection]
|
13
|
-
def connection(options={})
|
14
|
-
|
14
|
+
def connection(options = {})
|
15
15
|
options = {
|
16
16
|
:url => ReadabilityParser.api_endpoint
|
17
|
-
|
17
|
+
}.merge(options)
|
18
18
|
|
19
19
|
connection = Faraday.new(options) do |c|
|
20
|
-
|
20
|
+
# encode request params as "www-form-urlencoded"
|
21
|
+
c.use Faraday::Request::UrlEncoded
|
22
|
+
|
21
23
|
c.use FaradayMiddleware::FollowRedirects, limit: 3
|
22
|
-
|
24
|
+
|
25
|
+
# raise exceptions on 40x, 50x responses
|
26
|
+
c.use Faraday::Response::RaiseError
|
23
27
|
|
24
28
|
c.response :xml, :content_type => /\bxml$/
|
25
29
|
c.response :json, :content_type => /\bjson$/
|
@@ -10,7 +10,7 @@ module ReadabilityParser
|
|
10
10
|
#
|
11
11
|
# @param response [Hash]
|
12
12
|
# @return [ReadabilityParser::Error::ClientError]
|
13
|
-
def initialize(error=nil)
|
13
|
+
def initialize(error = nil)
|
14
14
|
parsed_error = parse_error(error)
|
15
15
|
http_error = error.response[:status].to_i
|
16
16
|
|
@@ -21,11 +21,12 @@ module ReadabilityParser
|
|
21
21
|
end
|
22
22
|
end
|
23
23
|
|
24
|
+
|
24
25
|
private
|
25
26
|
|
26
|
-
|
27
|
-
|
28
|
-
|
27
|
+
def parse_error(error)
|
28
|
+
MultiJson.load(error.response[:body], :symbolize_keys => true)
|
29
|
+
end
|
29
30
|
end # ClientError
|
30
31
|
|
31
32
|
class ConfigurationError < ReadabilityParser::Error; end
|
@@ -8,13 +8,13 @@ module ReadabilityParser
|
|
8
8
|
request(:get, path, params)
|
9
9
|
end
|
10
10
|
|
11
|
+
|
11
12
|
private
|
12
13
|
|
13
14
|
# Returns a Faraday::Response object
|
14
15
|
#
|
15
16
|
# @return [Faraday::Response]
|
16
|
-
def request(method, path, params={})
|
17
|
-
|
17
|
+
def request(method, path, params = {})
|
18
18
|
raise ReadabilityParser::Error::ConfigurationError.new("Please configure ReadabilityParser.api_token first") if api_token.nil?
|
19
19
|
|
20
20
|
params.merge!({
|
data/readability_parser.gemspec
CHANGED
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,11 @@
|
|
1
|
+
require 'bundler/setup'
|
2
|
+
require 'rspec'
|
3
|
+
|
4
|
+
require 'readability_parser'
|
5
|
+
|
6
|
+
RSpec.configure do |config|
|
7
|
+
config.treat_symbols_as_metadata_keys_with_true_values = true
|
8
|
+
config.filter_run focus: true
|
9
|
+
config.filter_run_excluding skip: true
|
10
|
+
config.run_all_when_everything_filtered = true
|
11
|
+
end
|
metadata
CHANGED
@@ -1,46 +1,39 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: readability_parser
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Philippe Dionne
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain:
|
11
|
-
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
28
|
-
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
dnZVSWd5VktGb20rClROOFdDUFpMbzRtWWFZbzRzU3RrRi9HNXY4STNydVpP
|
35
|
-
YnI3by9mMjB4RzVyOEU0TkQyR0VHVGVGSmhncE1jSE8KSXIxdVluL0xMZUdH
|
36
|
-
NWcyRUFLQ2RZeTJYb29odGNTUFlBcGJlRlFnV09HS29pb1FWUkNERzNjSG1h
|
37
|
-
a2ZWQVY1TQpEdU5senZqaFd0UER3RTVtWU81eDVYcXVXUXVFTnc3OHVydDFh
|
38
|
-
aW9OckllMC8xNWRIcERvSUVESUxhNnpVNDZCClhEdHAxWXhkZVZHSUJ1Tm9Q
|
39
|
-
MXZqRFN2TktZajBwTWpSQUVQcnFLMzlqS0U9Ci0tLS0tRU5EIENFUlRJRklD
|
40
|
-
QVRFLS0tLS0K
|
41
|
-
date: 2013-04-01 00:00:00.000000000 Z
|
11
|
+
- |
|
12
|
+
-----BEGIN CERTIFICATE-----
|
13
|
+
MIIDfDCCAmSgAwIBAgIBATANBgkqhkiG9w0BAQUFADBCMRQwEgYDVQQDDAtkaW9u
|
14
|
+
bmUucGhpbDEVMBMGCgmSJomT8ixkARkWBWdtYWlsMRMwEQYKCZImiZPyLGQBGRYD
|
15
|
+
Y29tMB4XDTEzMDMwOTEzMjMzNVoXDTE0MDMwOTEzMjMzNVowQjEUMBIGA1UEAwwL
|
16
|
+
ZGlvbm5lLnBoaWwxFTATBgoJkiaJk/IsZAEZFgVnbWFpbDETMBEGCgmSJomT8ixk
|
17
|
+
ARkWA2NvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALtGK2NoFyVX
|
18
|
+
seKlfHb8nuhBy8rw1nP3JVHWoyqalLs0t3axUWe6sDCgQXAOL3FtkfYPYlyX6X4s
|
19
|
+
FggcSySUt0PvGdas0ym/lW+sfGT6gXDBKbPvkWFNtpXaIJ8FLhqnJR2m57b8R6pf
|
20
|
+
VMBDka95N80Xu9NQrAesF+wW/c6ZiAON2VDsWabZEfj146y7ZvviB7pZHlPznI4W
|
21
|
+
GVfOk0MCl0Q60Jyk7WwNec+NA9rG7vE/dWdGOKfxU6ZJnC6drC3kBsBKkRZs+GRh
|
22
|
+
6XoCAsrKbRwb/ZI3A1S/J9yvq/NQ1B/U3CisBFht+CbdspeXVUDx5dffDVxnxdo/
|
23
|
+
w2R3wJMvD2MCAwEAAaN9MHswCQYDVR0TBAIwADALBgNVHQ8EBAMCBLAwHQYDVR0O
|
24
|
+
BBYEFA+69dGxvFtLxJ+aH8l4UO9yy853MCAGA1UdEQQZMBeBFWRpb25uZS5waGls
|
25
|
+
QGdtYWlsLmNvbTAgBgNVHRIEGTAXgRVkaW9ubmUucGhpbEBnbWFpbC5jb20wDQYJ
|
26
|
+
KoZIhvcNAQEFBQADggEBAD7Vpuym0VvnXOydoCBkv/w8u32Njigt3bF3i/P91108
|
27
|
+
aDvORUymYrPxaBe+AsSJUkJB0MHywJdMc4MF3YISelCvUFGza8LYvvUIgyVKFom+
|
28
|
+
TN8WCPZLo4mYaYo4sStkF/G5v8I3ruZObr7o/f20xG5r8E4ND2GEGTeFJhgpMcHO
|
29
|
+
Ir1uYn/LLeGG5g2EAKCdYy2XoohtcSPYApbeFQgWOGKoioQVRCDG3cHmakfVAV5M
|
30
|
+
DuNlzvjhWtPDwE5mYO5x5XquWQuENw78urt1aioNrIe0/15dHpDoIEDILa6zU46B
|
31
|
+
XDtp1YxdeVGIBuNoP1vjDSvNKYj0pMjRAEPrqK39jKE=
|
32
|
+
-----END CERTIFICATE-----
|
33
|
+
date: 2013-11-14 00:00:00.000000000 Z
|
42
34
|
dependencies:
|
43
35
|
- !ruby/object:Gem::Dependency
|
36
|
+
name: faraday
|
44
37
|
requirement: !ruby/object:Gem::Requirement
|
45
38
|
requirements:
|
46
39
|
- - ~>
|
@@ -53,8 +46,8 @@ dependencies:
|
|
53
46
|
- - ~>
|
54
47
|
- !ruby/object:Gem::Version
|
55
48
|
version: 0.8.4
|
56
|
-
name: faraday
|
57
49
|
- !ruby/object:Gem::Dependency
|
50
|
+
name: faraday_middleware
|
58
51
|
requirement: !ruby/object:Gem::Requirement
|
59
52
|
requirements:
|
60
53
|
- - ~>
|
@@ -67,8 +60,8 @@ dependencies:
|
|
67
60
|
- - ~>
|
68
61
|
- !ruby/object:Gem::Version
|
69
62
|
version: 0.9.0
|
70
|
-
name: faraday_middleware
|
71
63
|
- !ruby/object:Gem::Dependency
|
64
|
+
name: hashie
|
72
65
|
requirement: !ruby/object:Gem::Requirement
|
73
66
|
requirements:
|
74
67
|
- - ~>
|
@@ -81,8 +74,8 @@ dependencies:
|
|
81
74
|
- - ~>
|
82
75
|
- !ruby/object:Gem::Version
|
83
76
|
version: 1.2.0
|
84
|
-
name: hashie
|
85
77
|
- !ruby/object:Gem::Dependency
|
78
|
+
name: multi_xml
|
86
79
|
requirement: !ruby/object:Gem::Requirement
|
87
80
|
requirements:
|
88
81
|
- - ~>
|
@@ -95,8 +88,8 @@ dependencies:
|
|
95
88
|
- - ~>
|
96
89
|
- !ruby/object:Gem::Version
|
97
90
|
version: 0.5.2
|
98
|
-
name: multi_xml
|
99
91
|
- !ruby/object:Gem::Dependency
|
92
|
+
name: multi_json
|
100
93
|
requirement: !ruby/object:Gem::Requirement
|
101
94
|
requirements:
|
102
95
|
- - ~>
|
@@ -109,21 +102,6 @@ dependencies:
|
|
109
102
|
- - ~>
|
110
103
|
- !ruby/object:Gem::Version
|
111
104
|
version: 1.7.2
|
112
|
-
name: multi_json
|
113
|
-
- !ruby/object:Gem::Dependency
|
114
|
-
requirement: !ruby/object:Gem::Requirement
|
115
|
-
requirements:
|
116
|
-
- - ! '>='
|
117
|
-
- !ruby/object:Gem::Version
|
118
|
-
version: '0'
|
119
|
-
type: :development
|
120
|
-
prerelease: false
|
121
|
-
version_requirements: !ruby/object:Gem::Requirement
|
122
|
-
requirements:
|
123
|
-
- - ! '>='
|
124
|
-
- !ruby/object:Gem::Version
|
125
|
-
version: '0'
|
126
|
-
name: rspec
|
127
105
|
description: A tiny ruby wrapper for Readability's content parser api
|
128
106
|
email:
|
129
107
|
- dionne.phil@gmail.com
|
@@ -148,12 +126,12 @@ files:
|
|
148
126
|
- lib/readability_parser/request.rb
|
149
127
|
- lib/readability_parser/version.rb
|
150
128
|
- readability_parser.gemspec
|
151
|
-
- spec/
|
152
|
-
- spec/
|
153
|
-
- spec/
|
154
|
-
- spec/
|
155
|
-
- spec/
|
156
|
-
- spec/
|
129
|
+
- spec/readability_parser/api/content_spec.rb
|
130
|
+
- spec/readability_parser/article_spec.rb
|
131
|
+
- spec/readability_parser/client_spec.rb
|
132
|
+
- spec/readability_parser/error_spec.rb
|
133
|
+
- spec/readability_parser_spec.rb
|
134
|
+
- spec/spec_helper.rb
|
157
135
|
homepage: https://github.com/phildionne/readability_parser
|
158
136
|
licenses:
|
159
137
|
- MIT
|
@@ -164,26 +142,26 @@ require_paths:
|
|
164
142
|
- lib
|
165
143
|
required_ruby_version: !ruby/object:Gem::Requirement
|
166
144
|
requirements:
|
167
|
-
- -
|
145
|
+
- - '>='
|
168
146
|
- !ruby/object:Gem::Version
|
169
147
|
version: '0'
|
170
148
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
171
149
|
requirements:
|
172
|
-
- -
|
150
|
+
- - '>='
|
173
151
|
- !ruby/object:Gem::Version
|
174
152
|
version: '0'
|
175
153
|
requirements: []
|
176
154
|
rubyforge_project:
|
177
|
-
rubygems_version: 2.
|
155
|
+
rubygems_version: 2.1.9
|
178
156
|
signing_key:
|
179
157
|
specification_version: 4
|
180
158
|
summary: Interact with the article parsing featureset of Readability. This means grabbing
|
181
159
|
an article's content based on a URL.
|
182
160
|
test_files:
|
183
|
-
- spec/
|
184
|
-
- spec/
|
185
|
-
- spec/
|
186
|
-
- spec/
|
187
|
-
- spec/
|
188
|
-
- spec/
|
161
|
+
- spec/readability_parser/api/content_spec.rb
|
162
|
+
- spec/readability_parser/article_spec.rb
|
163
|
+
- spec/readability_parser/client_spec.rb
|
164
|
+
- spec/readability_parser/error_spec.rb
|
165
|
+
- spec/readability_parser_spec.rb
|
166
|
+
- spec/spec_helper.rb
|
189
167
|
has_rdoc:
|
metadata.gz.sig
CHANGED
Binary file
|
data/spec/helper.rb
DELETED