Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
CDNDrive
提交
8f0e1993
C
CDNDrive
项目概览
OpenDocCN
/
CDNDrive
通知
12
Star
0
Fork
1
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
C
CDNDrive
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
8f0e1993
编写于
8月 16, 2020
作者:
W
wizardforcel
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
修复搜狐图床
上级
33abd9ef
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
23 addition
and
3 deletion
+23
-3
CDNDrive/drivers/SohuApi.py
CDNDrive/drivers/SohuApi.py
+22
-3
CDNDrive/drivers/__init__.py
CDNDrive/drivers/__init__.py
+1
-0
未找到文件。
CDNDrive/drivers/SohuApi.py
浏览文件 @
8f0e1993
...
...
@@ -14,8 +14,8 @@ from .BaseApi import BaseApi
class
SohuApi
(
BaseApi
):
default_url
=
lambda
self
,
hash
:
f
"http://
5b0988e595225.cdn.sohucs.com/images/
{
hash
}
.png"
extract_hash
=
lambda
self
,
s
:
re
.
findall
(
r
"\d{8}/[A-Fa-f0-9]{32}"
,
s
)[
0
]
default_url
=
lambda
self
,
hash
:
f
"http://
p1.itc.cn/images
{
hash
}
.png"
extract_hash
=
lambda
self
,
s
:
re
.
findall
(
r
"\d{
2}/\d{
8}/[A-Fa-f0-9]{32}"
,
s
)[
0
]
def
__init__
(
self
):
super
().
__init__
()
...
...
@@ -23,25 +23,44 @@ class SohuApi(BaseApi):
def
meta2real
(
self
,
url
):
if
re
.
match
(
r
"^shdrive://\d{8}/[A-Fa-f0-9]{32}$"
,
url
):
hash
=
re
.
findall
(
r
"\d{8}/[A-Fa-f0-9]{32}"
,
url
)[
0
]
return
f
'http://5b0988e595225.cdn.sohucs.com/images/
{
hash
}
.png'
elif
re
.
match
(
r
'^shdrive2://\d{2}/\d{8}/[A-Fa-f0-9]{32}$'
,
url
):
return
self
.
default_url
(
self
.
extract_hash
(
url
))
else
:
return
None
def
real2meta
(
self
,
url
):
return
'shdrive://'
+
self
.
extract_hash
(
url
)
return
'shdrive
2
://'
+
self
.
extract_hash
(
url
)
def
set_cookies
(
self
,
cookie_str
):
self
.
cookies
=
parse_cookies
(
cookie_str
)
save_cookies
(
'sohu'
,
self
.
cookies
)
def
image_upload
(
self
,
img
):
url
=
'https://mp.sohu.com/mpbp/bp/account/list'
try
:
j
=
request_retry
(
'GET'
,
url
,
headers
=
SohuApi
.
default_hdrs
,
cookies
=
self
.
cookies
).
json
()
except
Exception
as
ex
:
return
{
'code'
:
114514
,
'message'
:
str
(
ex
)}
if
j
[
'code'
]
!=
2000000
:
return
{
'code'
:
j
[
'code'
],
'message'
:
j
[
'msg'
]}
mpid
=
j
[
'data'
][
'data'
][
0
][
'accounts'
][
0
][
'id'
]
url
=
'https://mp.sohu.com/commons/front/outerUpload/v2/file'
files
=
{
'file'
:
(
f
"
{
time
.
time
()
*
1000
}
.png"
,
img
)}
data
=
{
'accountId'
:
mpid
}
try
:
j
=
request_retry
(
'POST'
,
url
,
files
=
files
,
data
=
data
,
headers
=
SohuApi
.
default_hdrs
,
cookies
=
self
.
cookies
).
json
()
...
...
CDNDrive/drivers/__init__.py
浏览文件 @
8f0e1993
...
...
@@ -28,6 +28,7 @@ prefixes = {
'bjdrive'
:
'baijia'
,
'csdrive'
:
'csdn'
,
'shdrive'
:
'sohu'
,
'shdrive2'
:
'sohu'
,
'jsdrive'
:
'jian'
,
'wbdrive'
:
'weibo'
,
'aldrive'
:
'ali'
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录