buapi 0.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.
Files changed (3) hide show
  1. checksums.yaml +4 -4
  2. data/lib/buapi.rb +47 -40
  3. metadata +2 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: d6e84eafd74a5ba4ef4a07bb72c5bcf7806ef275
4
- data.tar.gz: 5717ff10240332ed8bd228dec4100755b4aa37a7
3
+ metadata.gz: 0af344f4051e44370b806095d5a573b1c9ad0f70
4
+ data.tar.gz: ba293acfaf6a23b77dad996ec57cc2e67457bde8
5
5
  SHA512:
6
- metadata.gz: b4d0bf9c762292ac6854841526ba21b62337005207e8358ca4b35dfb0fd09d46ac279d2290efc85cf652cb31637873954b9297115816ecd4c4a73ee7fb6c464e
7
- data.tar.gz: 6a374b557b7685d00409ed2a08e2d9c96eb386546db473bb8fbe68b829423695ec7cfd0e46406fbbf29fca402b68120c4cfb0429c3bf0376fc33641832b9d212
6
+ metadata.gz: 0492d633cc8671044fdc0444036d4a74e405712ab20ebc838d38acb88b68bdaa6c741f8445317c7a5eb925465b9eaf51a526c8667350c9574a9ad279e466b8b6
7
+ data.tar.gz: 7ce8c558693b36a29717e25d589439c9d907f4f2ae8c4dd931675fa2f8286c37b158929af0f286980cddb58909d024b1f67936c4be8da0b9ce76c32d72949cb2
@@ -12,46 +12,6 @@ module BU
12
12
  end
13
13
  end
14
14
 
15
- def doc(url)
16
- Nokogiri::HTML(@conn.get(url).body)
17
- end
18
-
19
- def search(target, post_options)
20
- Nokogiri::HTML(
21
- @conn.post(target, post_options).body
22
- )
23
- end
24
-
25
- def releases(term)
26
- search('/search.html', {search: term})
27
- end
28
-
29
- def manga(term, type: 'title')
30
- search('/series.html', {stype: type, search: term})
31
- end
32
-
33
- def series_url(manga)
34
- doc = manga(manga)
35
- link = doc.css('a').find do |a|
36
- a[:alt] == "Series Info" && a.text.downcase == manga.downcase
37
- end
38
- link ? link[:href].sub(@root, '') : :no_match
39
- end
40
-
41
- def series_description(info)
42
- info[0].text
43
- end
44
-
45
- def series_genres(info)
46
- info[14].css('a')[0..-2].map {|a| a.text}
47
- end
48
-
49
- def series_scanlators(info)
50
- info[4].css('a')
51
- .select {|a| a.text != "Less..." && a.text != "More..." }
52
- .map {|a| {uri: a[:href], name: a.text} }
53
- end
54
-
55
15
  def series_dashboard(manga)
56
16
  url = series_url(manga)
57
17
  info = doc(url).css('.sMember div.sContent')
@@ -62,6 +22,53 @@ module BU
62
22
  scanlators: series_scanlators(info),
63
23
  }
64
24
  end
25
+
26
+ private
27
+ def doc(url)
28
+ Nokogiri::HTML(@conn.get(url).body)
29
+ end
30
+
31
+ def search(target, post_options)
32
+ Nokogiri::HTML(
33
+ @conn.post(target, post_options).body
34
+ )
35
+ end
36
+
37
+ def releases(term)
38
+ search('/search.html', {search: term})
39
+ end
40
+
41
+ def manga(term, type: 'title')
42
+ search('/series.html', {stype: type, search: term})
43
+ end
44
+
45
+ def series_url(manga)
46
+ doc = manga(manga)
47
+ link = doc.css('a').find do |a|
48
+ a[:alt] == "Series Info" && match_names(a.text, manga)
49
+ end
50
+ link ? link[:href].sub(@root, '') : :no_match
51
+ end
52
+
53
+ def series_description(info)
54
+ info[0].text
55
+ end
56
+
57
+ def series_genres(info)
58
+ info[14].css('a')[0..-2].map {|a| a.text}
59
+ end
60
+
61
+ def series_scanlators(info)
62
+ info[4].css('a')
63
+ .select {|a| a.text != "Less..." && a.text != "More..." }
64
+ .map {|a| {uri: a[:href], name: a.text} }
65
+ end
66
+
67
+ def match_names(name, other)
68
+ name = name.clone.gsub(/\W/, '')
69
+ other = other.clone.gsub(/\W/, '')
70
+ name.downcase == other.downcase
71
+ end
65
72
  end
66
73
  end
67
74
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: buapi
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - jphager2
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-06-19 00:00:00.000000000 Z
11
+ date: 2014-06-24 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description: Useful interface BakaUpdates
14
14
  email: jphager2@gmail.com