youtube_to_rss 0.1.0 → 0.2

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: f910f15fa4cecb0f9c569bce39bc757f4e2a5383e90cdc4b2edb230f913560a4
4
- data.tar.gz: 825682100716d9fc090457a7d1d788c4aeb34ed852a4121bb25bc551258a8294
3
+ metadata.gz: 85780af5e3663fc1e12a9f3763c939f2614d20f7c846d205393c273b54d34a13
4
+ data.tar.gz: 32a28f4f02375fed666cba38107eda4ccde1642559ff4b33a7d75f2c9faa0bde
5
5
  SHA512:
6
- metadata.gz: 3c46969d5387e31486a9484994d1eb04d124348c12b7004daaf3cbf30a7400f84118dcae761751c2ae21a593b7daad5968768d3c9e58e643bd16ea0185f02c5e
7
- data.tar.gz: 5478982306bdbd844870a17148bd585065f89a5deac6d3d600a08380e83d606cab7fc3203b9a87d088258201f66cd4c7d10dbfe8d7bc15a31c9b8245be496460
6
+ metadata.gz: e5ee729a77c4b846404aa1dbe6e60fb26e695daa1bd9eb817ec0ec567329381768b4a5f83a142bf2d9eea58ee2ddb2a584006ec8a8355ae09a0b46d594898954
7
+ data.tar.gz: ad121bb08dd1aa9920a4bb7d17ed356bf0d5f841c6e648690ca8178fb79d41c4059b5a2474e9a35f9841e362da63a7a01c86ee0a33083a109b7574481ebd11db
data/.gitignore CHANGED
@@ -6,6 +6,5 @@
6
6
  /pkg/
7
7
  /spec/reports/
8
8
  /tmp/
9
-
10
- # rspec failure tracking
11
9
  .rspec_status
10
+ *.gem
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- youtube_to_rss (0.1.0)
4
+ youtube_to_rss (0.1.1)
5
5
 
6
6
  GEM
7
7
  remote: https://rubygems.org/
@@ -27,27 +27,19 @@ GEM
27
27
  zeitwerk (~> 2.3)
28
28
  ast (2.4.1)
29
29
  builder (3.2.4)
30
- byebug (11.1.3)
31
30
  coderay (1.1.3)
32
31
  concurrent-ruby (1.1.7)
33
32
  crass (1.0.6)
34
33
  diff-lcs (1.4.4)
35
34
  erubi (1.10.0)
36
- httparty (0.18.1)
37
- mime-types (~> 3.0)
38
- multi_xml (>= 0.5.2)
39
35
  i18n (1.8.5)
40
36
  concurrent-ruby (~> 1.0)
41
37
  loofah (2.8.0)
42
38
  crass (~> 1.0.2)
43
39
  nokogiri (>= 1.5.9)
44
40
  method_source (1.0.0)
45
- mime-types (3.3.1)
46
- mime-types-data (~> 3.2015)
47
- mime-types-data (3.2020.1104)
48
41
  mini_portile2 (2.4.0)
49
42
  minitest (5.14.2)
50
- multi_xml (0.6.0)
51
43
  nokogiri (1.10.10)
52
44
  mini_portile2 (~> 2.4.0)
53
45
  parallel (1.20.1)
@@ -126,8 +118,6 @@ PLATFORMS
126
118
  ruby
127
119
 
128
120
  DEPENDENCIES
129
- byebug
130
- httparty
131
121
  pry
132
122
  pry-doc
133
123
  pry-rails
@@ -1,3 +1,3 @@
1
1
  module YoutubeToRss
2
- VERSION = "0.1.0"
2
+ VERSION = "0.2"
3
3
  end
@@ -1,24 +1,32 @@
1
- require "youtube_to_rss/version"
1
+ require 'youtube_to_rss/version'
2
2
 
3
3
  module YoutubeToRss
4
4
  class Error < StandardError; end
5
+
5
6
  class << self
6
7
  def convert(url)
7
8
  url = remove_query_strings(url)
9
+ base_url = 'https://www.youtube.com/feeds/videos.xml?'
8
10
 
9
11
  if url.include?('/channel/')
10
- channel_id = url.split('/channel/').last
11
- 'https://www.youtube.com/feeds/videos.xml?channel_id=' + channel_id
12
+ "#{base_url}channel_id=#{extract_param(url, '/channel/')}"
13
+ elsif url.include?('/c/')
14
+ "#{base_url}channel_id=#{extract_param(url, '/c/')}"
12
15
  elsif url.include?('/user/')
13
- user = url.split('/user/').last
14
- 'https://www.youtube.com/feeds/videos.xml?user=' + user
16
+ "#{base_url}user=#{extract_param(url, '/user/')}"
17
+ else
18
+ raise 'URL should have "channel" or "c" or "user" param.'
15
19
  end
16
20
  end
17
21
 
18
22
  private
19
23
 
24
+ def extract_param(url, param)
25
+ url.split(param).last
26
+ end
27
+
20
28
  def remove_query_strings(url)
21
- url.chomp("?").chomp("&")
29
+ url.split('?').first.split('&').first
22
30
  end
23
31
  end
24
32
  end
@@ -10,7 +10,7 @@ Gem::Specification.new do |spec|
10
10
  spec.description = ""
11
11
  spec.homepage = "https://github.com/ccozkan/youtube_to_rss"
12
12
  spec.license = "MIT"
13
- spec.required_ruby_version = Gem::Requirement.new(">= 2.3.0")
13
+ spec.required_ruby_version = Gem::Requirement.new(">= 2.5.0")
14
14
 
15
15
  spec.metadata["homepage_uri"] = spec.homepage
16
16
  spec.metadata["source_code_uri"] = "https://github.com/ccozkan/youtube_to_rss"
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: youtube_to_rss
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0
4
+ version: '0.2'
5
5
  platform: ruby
6
6
  authors:
7
7
  - C Çağrı Özkan
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-12-26 00:00:00.000000000 Z
11
+ date: 2022-07-12 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: ''
14
14
  email:
@@ -45,14 +45,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
45
45
  requirements:
46
46
  - - ">="
47
47
  - !ruby/object:Gem::Version
48
- version: 2.3.0
48
+ version: 2.5.0
49
49
  required_rubygems_version: !ruby/object:Gem::Requirement
50
50
  requirements:
51
51
  - - ">="
52
52
  - !ruby/object:Gem::Version
53
53
  version: '0'
54
54
  requirements: []
55
- rubygems_version: 3.1.4
55
+ rubygems_version: 3.1.6
56
56
  signing_key:
57
57
  specification_version: 4
58
58
  summary: Converts youtube channel addresses to rss links