Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
BiliDriveEx
提交
af6cad75
B
BiliDriveEx
项目概览
OpenDocCN
/
BiliDriveEx
通知
3
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
B
BiliDriveEx
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
af6cad75
编写于
3月 06, 2020
作者:
W
wizardforcel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
添加 userinfo 命令
上级
58794c81
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
18 addition
and
8 deletion
+18
-8
BiliDriveEx/__main__.py
BiliDriveEx/__main__.py
+10
-2
BiliDriveEx/bilibili.py
BiliDriveEx/bilibili.py
+8
-3
BiliDriveEx/util.py
BiliDriveEx/util.py
+0
-3
未找到文件。
BiliDriveEx/__main__.py
浏览文件 @
af6cad75
...
...
@@ -45,15 +45,20 @@ def fetch_meta(s):
def
login_handle
(
args
):
if
api
.
login
(
username
=
args
.
username
,
password
=
args
.
password
):
info
=
api
.
get_user_info
()
if
info
:
log
_info
(
info
)
if
info
:
log
(
info
)
else
:
log
(
"用户信息获取失败"
)
def
cookies_handle
(
args
):
api
.
set_cookies
(
args
.
cookies
)
info
=
api
.
get_user_info
()
if
info
:
log
_info
(
info
)
if
info
:
log
(
info
)
else
:
log
(
"用户信息获取失败"
)
def
userinfo_handle
(
args
):
info
=
api
.
get_user_info
()
if
info
:
log
(
info
)
else
:
log
(
"用户未登录"
)
def
upload_handle
(
args
):
def
core
(
index
,
block
):
try
:
...
...
@@ -293,6 +298,9 @@ def main():
cookies_parser
.
add_argument
(
"cookies"
,
help
=
"your bilibili cookies"
)
cookies_parser
.
set_defaults
(
func
=
cookies_handle
)
userinfo_parser
=
subparsers
.
add_parser
(
"userinfo"
,
help
=
"get userinfo"
)
userinfo_parser
.
set_defaults
(
func
=
userinfo_handle
)
upload_parser
=
subparsers
.
add_parser
(
"upload"
,
help
=
"upload a file"
)
upload_parser
.
add_argument
(
"file"
,
help
=
"name of the file to upload"
)
upload_parser
.
add_argument
(
"-b"
,
"--block-size"
,
default
=
4
,
type
=
int
,
help
=
"block size in MB"
)
...
...
BiliDriveEx/bilibili.py
浏览文件 @
af6cad75
...
...
@@ -123,6 +123,7 @@ class Bilibili:
continue
if
response
[
'code'
]
==
0
and
response
[
'data'
][
'status'
]
==
0
:
self
.
cookies
=
{}
for
cookie
in
response
[
'data'
][
'cookie_info'
][
'cookies'
]:
self
.
cookies
[
cookie
[
'name'
]]
=
cookie
[
'value'
]
log
(
"登录成功"
)
...
...
@@ -134,7 +135,7 @@ class Bilibili:
# 获取用户信息
def
get_user_info
(
self
):
def
get_user_info
(
self
,
fmt
=
True
):
url
=
f
"https://api.bilibili.com/x/space/myinfo"
headers
=
{
'Referer'
:
f
"https://space.bilibili.com"
,
...
...
@@ -145,7 +146,7 @@ class Bilibili:
).
json
()
if
not
response
or
response
.
get
(
"code"
)
!=
0
:
return
False
return
info
=
{
'ban'
:
False
,
...
...
@@ -167,7 +168,11 @@ class Bilibili:
info
[
'level'
]
=
response
[
'data'
][
'level'
]
info
[
'nickname'
]
=
response
[
'data'
][
'name'
]
info
[
'uid'
]
=
response
[
'data'
][
'mid'
]
return
info
if
fmt
:
return
f
"
{
info
[
'nickname'
]
}
(UID=
{
info
[
'uid'
]
}
), Lv.
{
info
[
'level'
]
}
(
{
info
[
'experience'
][
'current'
]
}
/
{
info
[
'experience'
][
'next'
]
}
), 拥有
{
info
[
'coins'
]
}
枚硬币, 账号
{
'状态正常'
if
not
info
[
'ban'
]
else
'被封禁'
}
"
else
:
return
info
def
save_cookies
(
self
):
with
open
(
os
.
path
.
join
(
bundle_dir
,
"cookies.json"
),
"w"
,
encoding
=
"utf-8"
)
as
f
:
...
...
BiliDriveEx/util.py
浏览文件 @
af6cad75
...
...
@@ -80,6 +80,3 @@ def request_retry(method, url, retry=5, **kwargs):
get_retry
=
lambda
url
,
retry
=
5
,
**
kwargs
:
request_retry
(
'GET'
,
url
,
retry
,
**
kwargs
)
post_retry
=
lambda
url
,
retry
=
5
,
**
kwargs
:
request_retry
(
'POST'
,
url
,
retry
,
**
kwargs
)
def
log_info
(
info
):
log
(
f
"
{
info
[
'nickname'
]
}
(UID=
{
info
[
'uid'
]
}
), Lv.
{
info
[
'level'
]
}
(
{
info
[
'experience'
][
'current'
]
}
/
{
info
[
'experience'
][
'next'
]
}
), 拥有
{
info
[
'coins'
]
}
枚硬币, 账号
{
'状态正常'
if
not
info
[
'ban'
]
else
'被封禁'
}
"
)
\ No newline at end of file
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录