parse_leo_mp3 0.0.01

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.
Files changed (3) hide show
  1. checksums.yaml +7 -0
  2. data/lib/parse_leo_mp3.rb +35 -0
  3. metadata +44 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 61b16a3e7e98f4103fe5c36abfca27cbf76ad454
4
+ data.tar.gz: 59ea6cf4fd6b5f3f10d20b58e2a44e5ca3178304
5
+ SHA512:
6
+ metadata.gz: feec98f0a63591b33d0c9ddc6e43bfa906f642480a006e09201fdf4466db6c58586ace1acdec87edfc9957eccfd71d86b9544dc2800e50cb31ef704a576d9491
7
+ data.tar.gz: 1b712dcc98f6fe55e802b6a0ad72387ac875a2caedc607539236a499f055792548b5e55231bfd19e935e1724471833cdde7a65289ea6ab9278764654039c0b48
@@ -0,0 +1,35 @@
1
+ require 'pry-byebug'
2
+ require 'nokogiri'
3
+ require 'open-uri'
4
+ class ParseLeoMp3
5
+ attr_accessor :language, :term
6
+ attr_reader :url
7
+ def initialize(input_hash = {})
8
+ @language = input_hash[:language] || 'ende'
9
+ @term = input_hash[:term] || 'hello'
10
+ @url = compose_query(@language, @term)
11
+ end
12
+
13
+ def compose_query(language = 'ende', search_term = 'hello')
14
+ url = 'https://dict.leo.org/dictQuery/m-vocab/' << language
15
+ url << '/query.xml?tolerMode=nof&lp=ende&lang=en&rmWords=off&rmSearch=on&directN=0&search='
16
+ url << search_term
17
+ url << '&searchLoc=0&resultOrder=basic&multiwordShowSingle=on&sectLenMax=16'
18
+ end
19
+
20
+ def instantiate_nokogiri_object(url)
21
+ Nokogiri::XML(open(url))
22
+ rescue
23
+ :danger
24
+ end
25
+
26
+ def parse_audio_identifier(url)
27
+ instantiate_nokogiri_object(url).at_css('pron').first[1]
28
+ rescue
29
+ :danger
30
+ end
31
+
32
+ def compose_url(url)
33
+ "https://dict.leo.org/media/audio/#{parse_audio_identifier(url)}.mp3"
34
+ end
35
+ end
metadata ADDED
@@ -0,0 +1,44 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: parse_leo_mp3
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.01
5
+ platform: ruby
6
+ authors:
7
+ - 'Maximilian Maintz, alias: Netznarkose'
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2017-03-19 00:00:00.000000000 Z
12
+ dependencies: []
13
+ description: A simple leo mp3 parser
14
+ email: mmaintz@posteo.de
15
+ executables: []
16
+ extensions: []
17
+ extra_rdoc_files: []
18
+ files:
19
+ - lib/parse_leo_mp3.rb
20
+ homepage: https://github.com/Netznarkose
21
+ licenses:
22
+ - MIT
23
+ metadata: {}
24
+ post_install_message:
25
+ rdoc_options: []
26
+ require_paths:
27
+ - lib
28
+ required_ruby_version: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ required_rubygems_version: !ruby/object:Gem::Requirement
34
+ requirements:
35
+ - - ">="
36
+ - !ruby/object:Gem::Version
37
+ version: '0'
38
+ requirements: []
39
+ rubyforge_project:
40
+ rubygems_version: 2.6.10
41
+ signing_key:
42
+ specification_version: 4
43
+ summary: identifies urls to audiofiles on leo dictionary
44
+ test_files: []