leo_mp3_parser 0.0.04 → 0.0.05
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 +4 -4
- data/lib/leo_mp3_parser.rb +9 -15
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b27cedde31941ec03bd037b1cd817ed83a349230
|
4
|
+
data.tar.gz: 6beb60944797deeab649d1bdef96a2aaccc05406
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: d238213cc44c556b32f120b6fac95edc907a814f1c3540e331bda1c4474616d974169e2284eab27fe17c2ae6498eaa1726438bebcbcbaac0405cfebac691a1e3
|
7
|
+
data.tar.gz: 9a22438d5f41ffe4ab97fce0db32a028e9e56900b902517dd1a64a16988386fe7ec16a14bd7e5e892f45448035def2ca657164b8dbe1b05da662a8e26ee5a4c0
|
data/lib/leo_mp3_parser.rb
CHANGED
@@ -1,23 +1,16 @@
|
|
1
|
-
require 'pry-byebug'
|
2
1
|
require 'nokogiri'
|
3
2
|
require 'open-uri'
|
4
3
|
class LeoMp3Parser
|
5
|
-
# attr_accessor :language_and_term
|
6
|
-
# def initialize(language_and_term = {})
|
7
|
-
# validate_arguments(language_and_term)
|
8
|
-
# @language_and_term = language_and_term
|
9
|
-
# end
|
10
|
-
|
11
4
|
def validate_arguments(language_and_term)
|
12
|
-
raise ArgumentError
|
13
|
-
raise ArgumentError
|
5
|
+
raise ArgumentError, 'Argument must be a Hash' unless language_and_term.is_a? Hash
|
6
|
+
raise ArgumentError, 'Keys must be :language and :term' unless language_and_term.keys.include?(:language) && language_and_term.keys.include?(:term)
|
14
7
|
language_and_term.values.map do |value|
|
15
|
-
raise ArgumentError
|
8
|
+
raise ArgumentError, 'Values must be Strings' unless value.is_a? String
|
16
9
|
end
|
17
10
|
language_and_term.values.map do |value|
|
18
|
-
raise ArgumentError
|
11
|
+
raise ArgumentError, 'Values can not be emtpy' if value.empty?
|
19
12
|
end
|
20
|
-
raise ArgumentError
|
13
|
+
raise ArgumentError, 'Language must be set to ende, esde or frde' unless language_and_term[:language].include?('ende') || language_and_term[:language].include?('esde') || language_and_term[:language].include?('frde')
|
21
14
|
end
|
22
15
|
|
23
16
|
def get_audio_url(language_and_term)
|
@@ -33,16 +26,17 @@ class LeoMp3Parser
|
|
33
26
|
url << '&searchLoc=0&resultOrder=basic&multiwordShowSingle=on§LenMax=16'
|
34
27
|
end
|
35
28
|
|
29
|
+
def cluster_fuck
|
30
|
+
raise StandardError, 'Something went wrong'
|
31
|
+
end
|
36
32
|
def instantiate_nokogiri_object(url)
|
37
33
|
Nokogiri::XML(open(url))
|
38
34
|
rescue
|
39
|
-
|
35
|
+
cluster_fuck
|
40
36
|
end
|
41
37
|
|
42
38
|
def parse_audio_identifier(url)
|
43
39
|
instantiate_nokogiri_object(url).at_css('pron').first[1]
|
44
|
-
rescue
|
45
|
-
:danger
|
46
40
|
end
|
47
41
|
|
48
42
|
def compose_url(url)
|