bremen 0.2.0 → 0.2.1
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/.travis.yml +3 -0
- data/README.md +21 -15
- data/Rakefile +2 -1
- data/bremen.gemspec +1 -0
- data/lib/bremen/nicovideo.rb +1 -1
- data/lib/bremen/version.rb +1 -1
- metadata +28 -21
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 987e03779501f1b43cc0702ec8d3e2315f513fed
|
4
|
+
data.tar.gz: 8a78ebca2f9fc3110e298bd3192c99ef3f33f36a
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: ffac9107f2da27c277441e6f1d40573132eaf620af55c7e8543849da3d1982d122f7499014094e9db4031b318350c1b36b9028b314b7aedf9b3c0ad18c1a91aa
|
7
|
+
data.tar.gz: ff5a508db79895b47f08c86488807266405dc219512218870305c2a39d3432afa1579e9a160816ba6e3eaed245fd48c7a518496338503c7551ef4e167cb516c0
|
data/.travis.yml
ADDED
data/README.md
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Bremen
|
1
|
+
# Bremen [](https://travis-ci.org/itzki/bremen)
|
2
2
|
|
3
3
|
**Bremen** provides common search interface for some music websites. it supports YouTube, SoundCloud, MixCloud and Nicovideo
|
4
4
|
|
@@ -18,7 +18,7 @@ Or install it yourself as:
|
|
18
18
|
|
19
19
|
## Setting
|
20
20
|
|
21
|
-
As far as
|
21
|
+
As far as SoundCloud concerned, you need to set your app's client id before using.
|
22
22
|
|
23
23
|
Bremen::Soundcloud.client_id = 'your_client_id'
|
24
24
|
|
@@ -30,26 +30,32 @@ Alternately, you can set 'SOUNDCLOUD_CLIENT_ID' environment variable.
|
|
30
30
|
|
31
31
|
call `.find` method with uid(unique key) or url.
|
32
32
|
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
33
|
+
```ruby
|
34
|
+
Bremen::Youtube.find('XXXXXXXXXXX')
|
35
|
+
Bremen::Youtube.find('http://www.youtube.com/watch?v=XXXXXXXXXXX')
|
36
|
+
Bremen::Soundcloud.find('1111111')
|
37
|
+
Bremen::Soundcloud.find('http://soundcloud.com/author/title')
|
38
|
+
Bremen::Mixcloud.find('/author/title/')
|
39
|
+
Bremen::Mixcloud.find('http://www.mixcloud.com/author/title/')
|
40
|
+
Bremen::Nicovideo.find('sm1111111')
|
41
|
+
Bremen::Nicovideo.find('http://www.nicovideo.jp/watch/sm1111111')
|
42
|
+
```
|
41
43
|
|
42
44
|
### Retrieving multiple tracks
|
43
45
|
|
44
46
|
call `.search` method with keyword.
|
45
47
|
|
46
|
-
|
48
|
+
```ruby
|
49
|
+
Bremen::Youtube.search(keyword: 'Perfume')
|
50
|
+
```
|
47
51
|
|
48
52
|
#### Optional params
|
49
53
|
|
50
|
-
You can add optional parameters for filtering. But
|
54
|
+
You can add optional parameters for filtering. But it doesn't support all official API's filters.
|
51
55
|
|
52
|
-
|
56
|
+
```ruby
|
57
|
+
Bremen::Youtube.search(keyword: 'KyaryPamyuPamyu', order: 'relevance', limit: 10)
|
58
|
+
```
|
53
59
|
|
54
60
|
### Track object
|
55
61
|
|
@@ -57,7 +63,7 @@ Retrieving methods return Track object(s).
|
|
57
63
|
|
58
64
|
attribute |type |description |
|
59
65
|
-------------|-------------|--------------------------|
|
60
|
-
uid |String |unique key
|
66
|
+
uid |String |unique key for each site |
|
61
67
|
url |String | |
|
62
68
|
title |String | |
|
63
69
|
author |Author Object|uid/url/name/thumbnail_url|
|
@@ -66,7 +72,7 @@ thumbnail_url|String |thumbnail image |
|
|
66
72
|
created_at |Time |released datetime |
|
67
73
|
updated_at |Time |modified datetime |
|
68
74
|
|
69
|
-
## API
|
75
|
+
## API references
|
70
76
|
|
71
77
|
- [Reference Guide: Data API Protocol - YouTube — Google Developers](https://developers.google.com/youtube/2.0/reference#Searching_for_videos)
|
72
78
|
- [Docs - API - Reference - SoundCloud Developers](http://developers.soundcloud.com/docs/api/reference#tracks)
|
data/Rakefile
CHANGED
data/bremen.gemspec
CHANGED
data/lib/bremen/nicovideo.rb
CHANGED
@@ -60,7 +60,7 @@ module Bremen
|
|
60
60
|
response.scan(%r{<div class="thumb_col_1">\n<!---->\n(.*?)\n<!---->\n</div></div>}m).flatten.map do |html|
|
61
61
|
uid = html.scan(%r{<table [^>]+ summary="(.+)">}).flatten.first
|
62
62
|
min, sec = html.scan(%r{<p class="vinfo_length"><span>([\d:]+)</span></p>}).flatten.first.to_s.split(':')
|
63
|
-
created_at = Time.parse(html.scan(%r{<strong>(.+:\d\d)</strong>}).flatten.first.to_s.gsub(/\xE5\xB9\xB4|\xE6\x9C\x88|\xE6\x97\xA5
|
63
|
+
created_at = Time.parse(html.scan(%r{<strong>(.+:\d\d)</strong>}).flatten.first.to_s.gsub(/\xE5\xB9\xB4|\xE6\x9C\x88|\xE6\x97\xA5/n, '')).utc
|
64
64
|
new({
|
65
65
|
uid: uid,
|
66
66
|
url: "#{BASE_URL}watch/#{uid}",
|
data/lib/bremen/version.rb
CHANGED
metadata
CHANGED
@@ -1,62 +1,69 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bremen
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.2.
|
5
|
-
prerelease:
|
4
|
+
version: 0.2.1
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- itzki
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date:
|
11
|
+
date: 2013-03-21 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: guard-minitest
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
|
-
- -
|
17
|
+
- - '>='
|
20
18
|
- !ruby/object:Gem::Version
|
21
19
|
version: '0'
|
22
20
|
type: :development
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
|
-
- -
|
24
|
+
- - '>='
|
28
25
|
- !ruby/object:Gem::Version
|
29
26
|
version: '0'
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rb-fsevent
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
|
-
- -
|
31
|
+
- - '>='
|
36
32
|
- !ruby/object:Gem::Version
|
37
33
|
version: '0'
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
|
-
- -
|
38
|
+
- - '>='
|
44
39
|
- !ruby/object:Gem::Version
|
45
40
|
version: '0'
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: terminal-notifier-guard
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
|
-
- -
|
45
|
+
- - '>='
|
52
46
|
- !ruby/object:Gem::Version
|
53
47
|
version: '0'
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
|
-
- -
|
52
|
+
- - '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rake
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - '>='
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - '>='
|
60
67
|
- !ruby/object:Gem::Version
|
61
68
|
version: '0'
|
62
69
|
description: integrated searcher of audio tracks on music sites
|
@@ -67,6 +74,7 @@ extensions: []
|
|
67
74
|
extra_rdoc_files: []
|
68
75
|
files:
|
69
76
|
- .gitignore
|
77
|
+
- .travis.yml
|
70
78
|
- Gemfile
|
71
79
|
- Guardfile
|
72
80
|
- LICENSE.txt
|
@@ -99,27 +107,26 @@ files:
|
|
99
107
|
- spec/spec_helper.rb
|
100
108
|
homepage: https://github.com/itzki/bremen
|
101
109
|
licenses: []
|
110
|
+
metadata: {}
|
102
111
|
post_install_message:
|
103
112
|
rdoc_options: []
|
104
113
|
require_paths:
|
105
114
|
- lib
|
106
115
|
required_ruby_version: !ruby/object:Gem::Requirement
|
107
|
-
none: false
|
108
116
|
requirements:
|
109
|
-
- -
|
117
|
+
- - '>='
|
110
118
|
- !ruby/object:Gem::Version
|
111
119
|
version: '0'
|
112
120
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
121
|
requirements:
|
115
|
-
- -
|
122
|
+
- - '>='
|
116
123
|
- !ruby/object:Gem::Version
|
117
124
|
version: '0'
|
118
125
|
requirements: []
|
119
126
|
rubyforge_project:
|
120
|
-
rubygems_version:
|
127
|
+
rubygems_version: 2.0.3
|
121
128
|
signing_key:
|
122
|
-
specification_version:
|
129
|
+
specification_version: 4
|
123
130
|
summary: Bremen provides common search interface for some music websites. it supports
|
124
131
|
YouTube, SoundCloud, MixCloud and Nicovideo
|
125
132
|
test_files:
|