arssene 0.1.7 → 0.1.9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b93d59b2c49f0de03da0ef4c65d528fe5d6dd9c373cae473c9e9669f4265b829
4
- data.tar.gz: c91c7a16b4698ec0ca00965819447160947e1f05b0a3571ec40ffaacdc009abf
3
+ metadata.gz: f4147f4af58866ead56b81fb0f80babc70510d7071720986ab406ed715b88830
4
+ data.tar.gz: c0395b9ca8126e25492adacaa903a2b0736bde0b70d07d740d12a34c5ac16def
5
5
  SHA512:
6
- metadata.gz: 2db5f097b7a11b65185677725fe1f5eca292edb27d0d45d5c24879cc047cb0d3b14c5c90320714d5fdc1b840e39fd6b8365fa310fb118479ae813c44ff451070
7
- data.tar.gz: 85d5ea7d6389232f87d90ddb103484882a7032544c5112a571be6ea6a5963be03dca0f04129811d5c9c7bb26a4159d4f1693393f599860aba71affb552da3b0b
6
+ metadata.gz: 6ebfe02fd14ccc58e9620faeea4bd007af9dc91b01d3cab0ec07aefd573906dcef73a1ec063e3f984750e6257cd6321208cca927ca28b2a8b86058086e952438
7
+ data.tar.gz: d25129952ac6700d26a50df90614ae136af9bfcb6dc57760c8947636ff3965e1f687e982184ddfe0b1f3a07ea4ddd766d0d9ed2215f79f1641a50d4a05065c8e
data/Gemfile.lock CHANGED
@@ -1,8 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- arssene (0.1.7)
5
- faraday
4
+ arssene (0.1.9)
6
5
  mechanize
7
6
  parallel
8
7
  rss
@@ -13,15 +12,12 @@ GEM
13
12
  specs:
14
13
  addressable (2.8.1)
15
14
  public_suffix (>= 2.0.2, < 6.0)
15
+ byebug (11.1.3)
16
16
  connection_pool (2.3.0)
17
17
  crass (1.0.6)
18
18
  diff-lcs (1.5.0)
19
19
  domain_name (0.5.20190701)
20
20
  unf (>= 0.0.5, < 1.0.0)
21
- faraday (2.5.2)
22
- faraday-net_http (>= 2.0, < 3.1)
23
- ruby2_keywords (>= 0.0.4)
24
- faraday-net_http (3.0.0)
25
21
  http-cookie (1.0.5)
26
22
  domain_name (~> 0.5)
27
23
  mechanize (2.8.5)
@@ -61,7 +57,6 @@ GEM
61
57
  rspec-support (~> 3.11.0)
62
58
  rspec-support (3.11.1)
63
59
  rss (0.2.8)
64
- ruby2_keywords (0.0.5)
65
60
  rubyntlm (0.6.3)
66
61
  sanitize (6.0.0)
67
62
  crass (~> 1.0.2)
@@ -78,6 +73,7 @@ PLATFORMS
78
73
  DEPENDENCIES
79
74
  arssene!
80
75
  bundler (~> 2.0)
76
+ byebug
81
77
  rake (~> 13.0)
82
78
  rspec (~> 3.0)
83
79
 
data/arssene.gemspec CHANGED
@@ -36,9 +36,9 @@ Gem::Specification.new do |spec|
36
36
  spec.require_paths = ['lib']
37
37
 
38
38
  spec.add_development_dependency 'bundler', '~> 2.0'
39
+ spec.add_development_dependency 'byebug'
39
40
  spec.add_development_dependency 'rake', '~> 13.0'
40
41
  spec.add_development_dependency 'rspec', '~> 3.0'
41
- spec.add_dependency 'faraday'
42
42
  spec.add_dependency 'mechanize'
43
43
  spec.add_dependency 'parallel'
44
44
  spec.add_dependency 'rss'
@@ -6,7 +6,7 @@ module Arssene
6
6
  items.map do |item|
7
7
  entry = handler.new
8
8
  entry.title = item.title
9
- entry.link = item.link
9
+ entry.link = item.link || item&.enclosure&.url
10
10
  entry.description = item.description
11
11
  entry.publication_date = item.pubDate
12
12
  entry.author = item.author
@@ -6,25 +6,23 @@ module Arssene
6
6
  begin
7
7
  channel = Arssene::Channel.new
8
8
  rss_link = url.dup
9
-
10
- response = Faraday.get(url)
11
- raise "Unable to reach feed: #{url} | error corde: #{response.status}" unless response.status == 200
12
-
13
- feed = RSS::Parser.parse(response.body)
14
- url = URI.parse(feed.channel.link)
15
- channel.title = feed.channel.title
16
- channel.link = feed.channel.link
17
- channel.host = url.host
18
- channel.feed_type = feed.feed_type
19
- channel.feed_version = feed.feed_version
20
- channel.description = feed.channel.description
21
- channel.publication_date = feed.channel.pubDate
22
- channel.language = feed.channel.language ? feed.channel.language.downcase : nil
23
- channel.copyright = feed.channel.copyright
24
- channel.entries = extract_items feed
25
- channel.meta = feed
26
- channel.relevant = true
27
- channel.rss_link = rss_link
9
+ URI.open(url) do |rss|
10
+ feed = RSS::Parser.parse(rss)
11
+ url = URI.parse(feed.channel.link)
12
+ channel.title = feed.channel.title
13
+ channel.link = feed.channel.link
14
+ channel.host = url.host
15
+ channel.feed_type = feed.feed_type
16
+ channel.feed_version = feed.feed_version
17
+ channel.description = feed.channel.description
18
+ channel.publication_date = feed.channel.pubDate
19
+ channel.language = feed.channel.language&.downcase
20
+ channel.copyright = feed.channel.copyright
21
+ channel.entries = extract_items feed
22
+ channel.meta = feed
23
+ channel.relevant = true
24
+ channel.rss_link = rss_link
25
+ end
28
26
  rescue StandardError => e
29
27
  return ({ error: e.to_s })
30
28
  end
@@ -1,3 +1,3 @@
1
1
  module Arssene
2
- VERSION = '0.1.7'
2
+ VERSION = '0.1.9'
3
3
  end
data/lib/arssene.rb CHANGED
@@ -2,7 +2,6 @@
2
2
 
3
3
  require 'arssene/version'
4
4
  require 'rss'
5
- require 'faraday'
6
5
  require 'mechanize'
7
6
  require 'parallel'
8
7
  require 'sanitize'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: arssene
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.7
4
+ version: 0.1.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Vic Carrasco
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-10-17 00:00:00.000000000 Z
11
+ date: 2022-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -25,47 +25,47 @@ dependencies:
25
25
  - !ruby/object:Gem::Version
26
26
  version: '2.0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: rake
28
+ name: byebug
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: '13.0'
33
+ version: '0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: '13.0'
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
- name: rspec
42
+ name: rake
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '3.0'
47
+ version: '13.0'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '3.0'
54
+ version: '13.0'
55
55
  - !ruby/object:Gem::Dependency
56
- name: faraday
56
+ name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ">="
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :runtime
61
+ version: '3.0'
62
+ type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ">="
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '0'
68
+ version: '3.0'
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: mechanize
71
71
  requirement: !ruby/object:Gem::Requirement