arssene 0.1.7 → 0.1.9

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.
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