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.
- checksums.yaml +7 -0
- data/lib/parse_leo_mp3.rb +35 -0
- 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§LenMax=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: []
|