p115client 0.0.5.15__py3-none-any.whl → 0.0.5.15.1__py3-none-any.whl
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.
- p115client/client.py +20 -4
- p115client/tool/download.py +1 -0
- p115client/tool/edit.py +13 -9
- p115client/tool/iterdir.py +2 -1
- {p115client-0.0.5.15.dist-info → p115client-0.0.5.15.1.dist-info}/METADATA +1 -1
- {p115client-0.0.5.15.dist-info → p115client-0.0.5.15.1.dist-info}/RECORD +8 -8
- {p115client-0.0.5.15.dist-info → p115client-0.0.5.15.1.dist-info}/LICENSE +0 -0
- {p115client-0.0.5.15.dist-info → p115client-0.0.5.15.1.dist-info}/WHEEL +0 -0
p115client/client.py
CHANGED
@@ -3171,10 +3171,26 @@ class P115OpenClient(ClientRequestMixin):
|
|
3171
3171
|
.. todo::
|
3172
3172
|
不动点可能和用户 id 有某种联系,但目前样本不足,难以推断,以后再尝试分析
|
3173
3173
|
"""
|
3174
|
-
|
3175
|
-
|
3176
|
-
|
3177
|
-
|
3174
|
+
user_id = str(self.user_id)
|
3175
|
+
cache_dir = Path("~/.p115client.cache.d").expanduser()
|
3176
|
+
cache_dir.mkdir(exist_ok=True)
|
3177
|
+
pc_2_point_json = cache_dir / "pickcode_stable_points.json"
|
3178
|
+
try:
|
3179
|
+
cache = loads(pc_2_point_json.open("rb").read())
|
3180
|
+
except OSError:
|
3181
|
+
cache = {}
|
3182
|
+
if point := cache.get(user_id):
|
3183
|
+
return point
|
3184
|
+
else:
|
3185
|
+
resp = self.fs_files({"show_dir": 1, "limit": 1, "cid": 0})
|
3186
|
+
check_response(resp)
|
3187
|
+
info = resp["data"][0]
|
3188
|
+
point = cache[user_id] = get_stable_point(normalize_attr(info)["pickcode"])
|
3189
|
+
try:
|
3190
|
+
pc_2_point_json.open("wb").write(dumps(cache))
|
3191
|
+
except Exception:
|
3192
|
+
pass
|
3193
|
+
return point
|
3178
3194
|
|
3179
3195
|
@overload
|
3180
3196
|
def refresh_access_token(
|
p115client/tool/download.py
CHANGED
p115client/tool/edit.py
CHANGED
@@ -128,7 +128,7 @@ def update_desc(
|
|
128
128
|
"""批量给文件或目录设置备注,此举可更新此文件或目录的 mtime
|
129
129
|
|
130
130
|
:param client: 115 客户端或 cookies
|
131
|
-
:param ids: 一组文件或目录的 id
|
131
|
+
:param ids: 一组文件或目录的 id 或 pickcode
|
132
132
|
:param desc: 备注文本
|
133
133
|
:param batch_size: 批次大小,分批次,每次提交的 id 数
|
134
134
|
:param max_workers: 并发工作数,如果为 None 或者 <= 0,则自动确定
|
@@ -199,7 +199,7 @@ def update_star(
|
|
199
199
|
如果一批中有任何一个 id 已经被删除,则这一批直接失败报错
|
200
200
|
|
201
201
|
:param client: 115 客户端或 cookies
|
202
|
-
:param ids: 一组文件或目录的 id
|
202
|
+
:param ids: 一组文件或目录的 id 或 pickcode
|
203
203
|
:param star: 是否设置星标
|
204
204
|
:param batch_size: 批次大小,分批次,每次提交的 id 数
|
205
205
|
:param max_workers: 并发工作数,如果为 None 或者 <= 0,则自动确定
|
@@ -271,7 +271,7 @@ def update_label(
|
|
271
271
|
"""批量给文件或目录设置标签
|
272
272
|
|
273
273
|
:param client: 115 客户端或 cookies
|
274
|
-
:param ids: 一组文件或目录的 id
|
274
|
+
:param ids: 一组文件或目录的 id 或 pickcode
|
275
275
|
:param label: 标签 id,多个用逗号 "," 隔开,如果用一个根本不存在的 id,效果就是清空标签列表
|
276
276
|
:param batch_size: 批次大小,分批次,每次提交的 id 数
|
277
277
|
:param max_workers: 并发工作数,如果为 None 或者 <= 0,则自动确定
|
@@ -336,7 +336,7 @@ def update_score(
|
|
336
336
|
"""批量给文件或目录设置分数
|
337
337
|
|
338
338
|
:param client: 115 客户端或 cookies
|
339
|
-
:param ids: 一组文件或目录的 id
|
339
|
+
:param ids: 一组文件或目录的 id 或 pickcode
|
340
340
|
:param score: 分数
|
341
341
|
:param batch_size: 批次大小,分批次,每次提交的 id 数
|
342
342
|
:param max_workers: 并发工作数,如果为 None 或者 <= 0,则自动确定
|
@@ -395,7 +395,7 @@ def update_top(
|
|
395
395
|
"""批量给文件或目录设置置顶
|
396
396
|
|
397
397
|
:param client: 115 客户端或 cookies
|
398
|
-
:param ids: 一组文件或目录的 id
|
398
|
+
:param ids: 一组文件或目录的 id 或 pickcode
|
399
399
|
:param score: 分数
|
400
400
|
:param batch_size: 批次大小,分批次,每次提交的 id 数
|
401
401
|
:param max_workers: 并发工作数,如果为 None 或者 <= 0,则自动确定
|
@@ -457,7 +457,7 @@ def update_show_play_long(
|
|
457
457
|
"""批量给目录设置显示时长
|
458
458
|
|
459
459
|
:param client: 115 客户端或 cookies
|
460
|
-
:param ids: 一组目录的 id
|
460
|
+
:param ids: 一组目录的 id 或 pickcode
|
461
461
|
:param show: 是否显示时长
|
462
462
|
:param batch_size: 批次大小,分批次,每次提交的 id 数
|
463
463
|
:param max_workers: 并发工作数,如果为 None 或者 <= 0,则自动确定
|
@@ -522,7 +522,7 @@ def update_category_shortcut(
|
|
522
522
|
"""批量给目录设置显示时长
|
523
523
|
|
524
524
|
:param client: 115 客户端或 cookies
|
525
|
-
:param ids: 一组目录的 id
|
525
|
+
:param ids: 一组目录的 id 或 pickcode
|
526
526
|
:param set: 是否设为快捷入口
|
527
527
|
:param batch_size: 批次大小,分批次,每次提交的 id 数
|
528
528
|
:param max_workers: 并发工作数,如果为 None 或者 <= 0,则自动确定
|
@@ -672,8 +672,12 @@ def post_event(
|
|
672
672
|
如果一批中有任何一个 id 已经被删除,则这一批直接失败报错
|
673
673
|
|
674
674
|
:param client: 115 客户端或 cookies
|
675
|
-
:param ids: 一组文件或目录的 id
|
676
|
-
:param
|
675
|
+
:param ids: 一组文件或目录的 id 或 pickcode
|
676
|
+
:param type: 事件类型
|
677
|
+
|
678
|
+
- "doc": 推送 "browse_document" 事件
|
679
|
+
- "img": 推送 "browse_image" 事件
|
680
|
+
|
677
681
|
:param batch_size: 批次大小,分批次,每次提交的 id 数
|
678
682
|
:param max_workers: 并发工作数,如果为 None 或者 <= 0,则自动确定
|
679
683
|
:param app: 使用此设备的接口
|
p115client/tool/iterdir.py
CHANGED
@@ -47,7 +47,7 @@ from typing import cast, overload, Any, Final, Literal, NamedTuple
|
|
47
47
|
from warnings import warn
|
48
48
|
|
49
49
|
from asynctools import to_list
|
50
|
-
from concurrenttools import run_as_thread,
|
50
|
+
from concurrenttools import run_as_thread, conmap
|
51
51
|
from iterutils import (
|
52
52
|
as_gen_step, bfs_gen, chunked, chain, chain_from_iterable, collect, foreach,
|
53
53
|
run_gen_step, run_gen_step_iter, through, with_iter_next, map as do_map,
|
@@ -3415,6 +3415,7 @@ def iter_nodes_using_info(
|
|
3415
3415
|
))
|
3416
3416
|
|
3417
3417
|
|
3418
|
+
# TODO: 是否能批量推送 "browse_audio" 或 "browse_video" 事件?
|
3418
3419
|
@overload
|
3419
3420
|
def iter_nodes_using_event(
|
3420
3421
|
client: str | P115Client,
|
@@ -1,19 +1,19 @@
|
|
1
1
|
LICENSE,sha256=o5242_N2TgDsWwFhPn7yr8YJNF7XsJM5NxUMtcT97bc,1100
|
2
2
|
p115client/__init__.py,sha256=1mx7njuAlqcuEWONTjSiiGnXyyNyqOcJyNX1FMHqQ-4,214
|
3
3
|
p115client/_upload.py,sha256=199Hc9B9vUMphDdwh8vK3yCIPusIfeAzzOLpC-WZ8C8,31184
|
4
|
-
p115client/client.py,sha256=
|
4
|
+
p115client/client.py,sha256=05ODXki0tes-WzRc6N6WT5zD8Lx_VWjV-yLIR8H6dxQ,809397
|
5
5
|
p115client/const.py,sha256=ZYtBtTFB0eljIR0tze21_52Gl0pQxvyqMmDwgB1bqNU,7803
|
6
6
|
p115client/exception.py,sha256=4SZ8ubOLMRxtcqc0u1kNzXqH1a6wwXJFwGnRDURoEgQ,3708
|
7
7
|
p115client/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
8
8
|
p115client/tool/__init__.py,sha256=IwwzbCQ7jpRoFGTQUCfGBx8zvjqjgSFs98yKpYyI46s,429
|
9
9
|
p115client/tool/attr.py,sha256=G91V71EhsqIIPkhGDnv2z6nxVq7wgl6nNPDj3AKzw1I,3079
|
10
10
|
p115client/tool/auth.py,sha256=qlRcfEjzebseiHR2dyBpOoPpxB4k8P6Tj729S2TLB1s,1672
|
11
|
-
p115client/tool/download.py,sha256=
|
12
|
-
p115client/tool/edit.py,sha256=
|
11
|
+
p115client/tool/download.py,sha256=7F1HJ7Hfh2bu-aBpK7E3Ijhs5tqVgEBIByxpMNiNqxc,65397
|
12
|
+
p115client/tool/edit.py,sha256=Nqy8G_UCGbIUGG_udd3JM8073Sm9I0q3kUe4i3XcIOg,19640
|
13
13
|
p115client/tool/export_dir.py,sha256=jPD4VP0kbJ1MW9CDgUcInSmt0aJejhn257x30Sm3hss,23557
|
14
14
|
p115client/tool/fs_files.py,sha256=12ED23jAdQR0KvXSaVE3XOgOfEBVriMMJl4vbE2tR3E,15824
|
15
15
|
p115client/tool/history.py,sha256=9pgF9l8VvQkpjsVgtIzNcrUQZzLH9tt4JysBwJ4yHsk,11636
|
16
|
-
p115client/tool/iterdir.py,sha256=
|
16
|
+
p115client/tool/iterdir.py,sha256=qUlFc_fOGeKs3BrINCGwaoyBHkDopStPeKWXMYWBkP8,177884
|
17
17
|
p115client/tool/life.py,sha256=dfwm5jKfo0K9pIUZKpZ32oPBrlcfrezflSJyyDIbX8E,17721
|
18
18
|
p115client/tool/offline.py,sha256=6HaGkbsAAx3FPFvSr_7LZvrUw_fp3QRB2y2kVRHNgZ0,6291
|
19
19
|
p115client/tool/pool.py,sha256=PImYG4fU7retZVFDPYib9e87J3RvJvugOW1mxX9jSU0,13831
|
@@ -22,7 +22,7 @@ p115client/tool/upload.py,sha256=dpww3TGSOyjqz1EogQEJDiZ9QWERd47izZOw9mNCCiA,329
|
|
22
22
|
p115client/tool/util.py,sha256=gvA-o-TcEAR3o754Kn82Bu6yggmnAhScUCrRpMVCI50,3934
|
23
23
|
p115client/tool/xys.py,sha256=r9wzE5VgpR6ATYHM1uVZ06uIU4qqVeDyRTYU6W_N_Tc,10190
|
24
24
|
p115client/type.py,sha256=h_pGKTlz07g64Y_93ylF-fUyC8g-HiQacMhu4KOXjYA,6457
|
25
|
-
p115client-0.0.5.15.dist-info/LICENSE,sha256=o5242_N2TgDsWwFhPn7yr8YJNF7XsJM5NxUMtcT97bc,1100
|
26
|
-
p115client-0.0.5.15.dist-info/METADATA,sha256=
|
27
|
-
p115client-0.0.5.15.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
|
28
|
-
p115client-0.0.5.15.dist-info/RECORD,,
|
25
|
+
p115client-0.0.5.15.1.dist-info/LICENSE,sha256=o5242_N2TgDsWwFhPn7yr8YJNF7XsJM5NxUMtcT97bc,1100
|
26
|
+
p115client-0.0.5.15.1.dist-info/METADATA,sha256=u70e2JlJ_fR0W1tIFFfa4iHUwPJzciy0hMzRpEl6zhQ,8230
|
27
|
+
p115client-0.0.5.15.1.dist-info/WHEEL,sha256=Nq82e9rUAnEjt98J6MlVmMCZb-t9cYE2Ir1kpBmnWfs,88
|
28
|
+
p115client-0.0.5.15.1.dist-info/RECORD,,
|
File without changes
|
File without changes
|