bilibili_console 0.0.1 → 0.0.3

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.
@@ -1,69 +1,69 @@
1
- # frozen_string_literal: true
2
-
3
- require_relative 'bilibili_console/http/http'
4
- require_relative 'bilibili_console/login'
5
- require_relative 'bilibili_console/fav'
6
- require_relative 'bilibili_console/video'
7
- require_relative 'bilibili_console/manga'
8
-
9
- # bilibili console main class
10
- class BilibiliConsole
11
- attr_accessor :http_client, :bilibili_login, :user, :fav, :video, :manga
12
-
13
- def initialize
14
- @http_client = BiliHttp::HttpClient.new
15
- @bilibili_login = Bilibili::Login.new(@http_client)
16
- @fav = Bilibili::Fav.new(@http_client)
17
- @video = Bilibili::Video.new(@http_client)
18
- @manga = Bilibili::Manga.new(@http_client)
19
- end
20
-
21
- def login
22
- set_login_http
23
- @bilibili_login.login
24
- end
25
-
26
- def login_user_info
27
- set_login_http
28
- set_api_http
29
- @bilibili_login.login_user_info
30
- end
31
-
32
- def user_fav_list
33
- @user = login_user_info if @user.nil?
34
- set_api_http
35
- @fav.list_user_fav_video(@user)
36
- end
37
-
38
- def list_fav_video(media_id, page_num = 1, page_size = 10, keyword = nil)
39
- set_api_http
40
- @fav.list_fav_video(media_id, page_num, page_size, keyword)
41
- end
42
-
43
- def download_video(bv_id)
44
- set_api_http
45
- @video.download_video_by_bv(bv_id)
46
- end
47
-
48
- def manga_checkin
49
- set_manga_http
50
- @manga.check_in
51
- end
52
-
53
- private
54
-
55
- def set_login_http
56
- @http_client.login_http = NiceHttp.new('https://passport.bilibili.com')
57
- @http_client.login_http.cookies = @bilibili_login.load_cookie
58
- end
59
-
60
- def set_api_http
61
- @http_client.api_http = NiceHttp.new('https://api.bilibili.com')
62
- @http_client.api_http.cookies = @bilibili_login.load_cookie
63
- end
64
-
65
- def set_manga_http
66
- @http_client.manga_http = NiceHttp.new('https://manga.bilibili.com')
67
- @http_client.manga_http.cookies = @bilibili_login.load_cookie
68
- end
69
- end
1
+ # frozen_string_literal: true
2
+
3
+ require_relative 'bilibili_console/http/http'
4
+ require_relative 'bilibili_console/login'
5
+ require_relative 'bilibili_console/fav'
6
+ require_relative 'bilibili_console/video'
7
+ require_relative 'bilibili_console/manga'
8
+
9
+ # bilibili console main class
10
+ class BilibiliConsole
11
+ attr_accessor :http_client, :bilibili_login, :user, :fav, :video, :manga
12
+
13
+ def initialize
14
+ @http_client = BiliHttp::HttpClient.new
15
+ @bilibili_login = Bilibili::Login.new(@http_client)
16
+ @fav = Bilibili::Fav.new(@http_client)
17
+ @video = Bilibili::Video.new(@http_client)
18
+ @manga = Bilibili::Manga.new(@http_client)
19
+ end
20
+
21
+ def login
22
+ set_login_http
23
+ @bilibili_login.login
24
+ end
25
+
26
+ def login_user_info
27
+ set_login_http
28
+ set_api_http
29
+ @bilibili_login.login_user_info
30
+ end
31
+
32
+ def user_fav_list
33
+ @user = login_user_info if @user.nil?
34
+ set_api_http
35
+ @fav.list_user_fav_video(@user)
36
+ end
37
+
38
+ def list_fav_video(options)
39
+ set_api_http
40
+ @fav.list_fav_video(options)
41
+ end
42
+
43
+ def download_video(bv_id, options)
44
+ set_api_http
45
+ @video.download_video_by_bv(bv_id, options)
46
+ end
47
+
48
+ def manga_checkin
49
+ set_manga_http
50
+ @manga.check_in
51
+ end
52
+
53
+ private
54
+
55
+ def set_login_http
56
+ @http_client.login_http = NiceHttp.new('https://passport.bilibili.com')
57
+ @http_client.login_http.cookies = @bilibili_login.load_cookie
58
+ end
59
+
60
+ def set_api_http
61
+ @http_client.api_http = NiceHttp.new('https://api.bilibili.com')
62
+ @http_client.api_http.cookies = @bilibili_login.load_cookie
63
+ end
64
+
65
+ def set_manga_http
66
+ @http_client.manga_http = NiceHttp.new('https://manga.bilibili.com')
67
+ @http_client.manga_http.cookies = @bilibili_login.load_cookie
68
+ end
69
+ end
data/rubocop.yml CHANGED
@@ -1,2 +1,2 @@
1
- Style/FrozenStringLiteralComment:
1
+ Style/FrozenStringLiteralComment:
2
2
  Enabled: false
metadata CHANGED
@@ -1,29 +1,15 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bilibili_console
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - leejoker
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-10-08 00:00:00.000000000 Z
11
+ date: 2021-12-18 00:00:00.000000000 Z
12
12
  dependencies:
13
- - !ruby/object:Gem::Dependency
14
- name: down
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: '5.0'
20
- type: :runtime
21
- prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
26
- version: '5.0'
27
13
  - !ruby/object:Gem::Dependency
28
14
  name: nice_http
29
15
  requirement: !ruby/object:Gem::Requirement
@@ -52,20 +38,6 @@ dependencies:
52
38
  - - "~>"
53
39
  - !ruby/object:Gem::Version
54
40
  version: '2.0'
55
- - !ruby/object:Gem::Dependency
56
- name: ruby-progressbar
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: 1.11.0
62
- type: :runtime
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: 1.11.0
69
41
  - !ruby/object:Gem::Dependency
70
42
  name: thor
71
43
  requirement: !ruby/object:Gem::Requirement
@@ -83,7 +55,7 @@ dependencies:
83
55
  description: a console tool for bilibili
84
56
  email: 1056650571@qq.com
85
57
  executables:
86
- - bili-console
58
+ - bilic
87
59
  extensions: []
88
60
  extra_rdoc_files:
89
61
  - README.md
@@ -98,8 +70,9 @@ files:
98
70
  - Rakefile
99
71
  - bilibili_console.gemspec
100
72
  - bin/banner.txt
101
- - bin/bili-console
73
+ - bin/bilic
102
74
  - lib/bilibili_console.rb
75
+ - lib/bilibili_console/api.rb
103
76
  - lib/bilibili_console/base.rb
104
77
  - lib/bilibili_console/fav.rb
105
78
  - lib/bilibili_console/http/http.rb
@@ -114,7 +87,7 @@ homepage: https://github.com/leejoker/bilibili-console
114
87
  licenses:
115
88
  - MIT
116
89
  metadata: {}
117
- post_install_message:
90
+ post_install_message:
118
91
  rdoc_options: []
119
92
  require_paths:
120
93
  - lib
@@ -129,8 +102,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
129
102
  - !ruby/object:Gem::Version
130
103
  version: '0'
131
104
  requirements: []
132
- rubygems_version: 3.2.22
133
- signing_key:
105
+ rubygems_version: 3.2.32
106
+ signing_key:
134
107
  specification_version: 4
135
108
  summary: bilibili console
136
109
  test_files: []
data/bin/bili-console DELETED
@@ -1,63 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- require 'thor'
4
- require 'bilibili_console'
5
-
6
- # bilibili-console command line
7
- class BiliConsole < Thor
8
- def self.exit_on_failure?
9
- true
10
- end
11
-
12
- desc 'help', 'help content'
13
- def help
14
- banner = File.read(File.expand_path('banner.txt', __dir__))
15
- puts <<~HELP
16
- #{banner}
17
-
18
- Usage: bili-console [arguments]
19
- help help messages
20
- login qrcode login
21
- user user info
22
- manga bilibili manga checkin
23
- HELP
24
- end
25
-
26
- desc 'login', 'login with qrcode'
27
- def login
28
- bc = BilibiliConsole.new
29
- puts bc.login
30
- end
31
-
32
- desc 'user', 'get user info'
33
- def user
34
- bc = BilibiliConsole.new
35
- user = bc.login_user_info
36
- puts <<~USER
37
- uid: #{user.uid}
38
- uname: #{user.uname}
39
- level: #{user.level_info[:current_level]}
40
- USER
41
- end
42
-
43
- desc 'manga', 'checkin bilibili manga'
44
- def manga_checkin
45
- bc = BilibiliConsole.new
46
- bc.manga.load_cookie
47
- body = bc.manga_checkin
48
- if body.code == 'invalid_argument'
49
- puts '您已经签到了'
50
- else
51
- puts '签到成功'
52
- end
53
- end
54
-
55
- desc 'down', 'download video by bv code'
56
- def download_video(bv_id)
57
- bc = BilibiliConsole.new
58
- bc.video.load_cookie
59
- bc.download_video(bv_id)
60
- end
61
- end
62
-
63
- BiliConsole.start