p115client 0.0.5.14.4__py3-none-any.whl → 0.0.5.15__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 +645 -519
- p115client/tool/edit.py +80 -5
- p115client/tool/iterdir.py +78 -54
- {p115client-0.0.5.14.4.dist-info → p115client-0.0.5.15.dist-info}/METADATA +1 -1
- {p115client-0.0.5.14.4.dist-info → p115client-0.0.5.15.dist-info}/RECORD +7 -7
- {p115client-0.0.5.14.4.dist-info → p115client-0.0.5.15.dist-info}/LICENSE +0 -0
- {p115client-0.0.5.14.4.dist-info → p115client-0.0.5.15.dist-info}/WHEEL +0 -0
p115client/client.py
CHANGED
@@ -396,6 +396,9 @@ def check_response(resp: dict | Awaitable[dict], /) -> dict | Coroutine[Any, Any
|
|
396
396
|
# {"state": false, "errno": 911, "error": "请验证账号"}
|
397
397
|
case 911:
|
398
398
|
raise AuthenticationError(errno.EAUTH, resp)
|
399
|
+
# {"state": false, "errno": 1001, "error": "参数错误"}
|
400
|
+
case 1001:
|
401
|
+
raise OperationalError(errno.EINVAL, resp)
|
399
402
|
# {"state": false, "errno": 10004, "error": "错误的链接"}
|
400
403
|
case 10004:
|
401
404
|
raise OperationalError(errno.EINVAL, resp)
|
@@ -3550,13 +3553,13 @@ class P115OpenClient(ClientRequestMixin):
|
|
3550
3553
|
- nf: str = <default> 💡 不要显示文件(即仅显示目录),但如果 show_dir=0,则此参数无效
|
3551
3554
|
- o: str = <default> 💡 用某字段排序(未定义的值会被视为 "user_utime")
|
3552
3555
|
|
3553
|
-
|
3554
|
-
|
3555
|
-
|
3556
|
-
|
3557
|
-
|
3558
|
-
|
3559
|
-
|
3556
|
+
- "file_name": 文件名
|
3557
|
+
- "file_size": 文件大小
|
3558
|
+
- "file_type": 文件种类
|
3559
|
+
- "user_etime": 事件时间(无效,效果相当于 "user_utime")
|
3560
|
+
- "user_utime": 修改时间
|
3561
|
+
- "user_ptime": 创建时间(无效,效果相当于 "user_utime")
|
3562
|
+
- "user_otime": 上一次打开时间(无效,效果相当于 "user_utime")
|
3560
3563
|
|
3561
3564
|
- qid: int = <default>
|
3562
3565
|
- r_all: 0 | 1 = <default>
|
@@ -3571,23 +3574,23 @@ class P115OpenClient(ClientRequestMixin):
|
|
3571
3574
|
- suffix: str = <default> 💡 后缀名(优先级高于 `type`)
|
3572
3575
|
- type: int = <default> 💡 文件类型
|
3573
3576
|
|
3574
|
-
|
3575
|
-
|
3576
|
-
|
3577
|
-
|
3578
|
-
|
3579
|
-
|
3580
|
-
|
3581
|
-
|
3582
|
-
|
3583
|
-
|
3584
|
-
|
3585
|
-
|
3586
|
-
|
3587
|
-
|
3588
|
-
|
3589
|
-
|
3590
|
-
|
3577
|
+
- 0: 全部(仅当前目录)
|
3578
|
+
- 1: 文档
|
3579
|
+
- 2: 图片
|
3580
|
+
- 3: 音频
|
3581
|
+
- 4: 视频
|
3582
|
+
- 5: 压缩包
|
3583
|
+
- 6: 软件/应用
|
3584
|
+
- 7: 书籍
|
3585
|
+
- 8: 其它
|
3586
|
+
- 9: 相当于 8
|
3587
|
+
- 10: 相当于 8
|
3588
|
+
- 11: 相当于 8
|
3589
|
+
- 12: ???
|
3590
|
+
- 13: ???
|
3591
|
+
- 14: ???
|
3592
|
+
- 15: 图片和视频,相当于 2 和 4
|
3593
|
+
- >= 16: 相当于 8
|
3591
3594
|
"""
|
3592
3595
|
api = complete_proapi("/open/ufile/files", base_url)
|
3593
3596
|
if isinstance(payload, (int, str)):
|
@@ -3846,12 +3849,12 @@ class P115OpenClient(ClientRequestMixin):
|
|
3846
3849
|
- lte_day: str 💡 搜索结果匹配的结束时间;格式:YYYY-MM-DD
|
3847
3850
|
- o: str = <default> 💡 用某字段排序
|
3848
3851
|
|
3849
|
-
|
3850
|
-
|
3851
|
-
|
3852
|
-
|
3853
|
-
|
3854
|
-
|
3852
|
+
- "file_name": 文件名
|
3853
|
+
- "file_size": 文件大小
|
3854
|
+
- "file_type": 文件种类
|
3855
|
+
- "user_utime": 修改时间
|
3856
|
+
- "user_ptime": 创建时间
|
3857
|
+
- "user_otime": 上一次打开时间
|
3855
3858
|
|
3856
3859
|
- offset: int = 0 💡 索引偏移,索引从 0 开始计算
|
3857
3860
|
- pick_code: str = <default> 💡 是否查询提取码,如果该值为 1 则查询提取码为 `search_value` 的文件
|
@@ -3862,15 +3865,15 @@ class P115OpenClient(ClientRequestMixin):
|
|
3862
3865
|
- suffix: str = <default> 💡 后缀名(优先级高于 `type`)
|
3863
3866
|
- type: int = <default> 💡 文件类型
|
3864
3867
|
|
3865
|
-
|
3866
|
-
|
3867
|
-
|
3868
|
-
|
3869
|
-
|
3870
|
-
|
3871
|
-
|
3872
|
-
|
3873
|
-
|
3868
|
+
- 0: 全部(仅当前目录)
|
3869
|
+
- 1: 文档
|
3870
|
+
- 2: 图片
|
3871
|
+
- 3: 音频
|
3872
|
+
- 4: 视频
|
3873
|
+
- 5: 压缩包
|
3874
|
+
- 6: 软件/应用
|
3875
|
+
- 7: 书籍
|
3876
|
+
- 99: 所有文件
|
3874
3877
|
|
3875
3878
|
- version: str = <default> 💡 版本号,比如 3.1
|
3876
3879
|
"""
|
@@ -4387,12 +4390,12 @@ class P115OpenClient(ClientRequestMixin):
|
|
4387
4390
|
:payload:
|
4388
4391
|
- flag: int = 0 💡 标识,用于对应某种情况
|
4389
4392
|
|
4390
|
-
|
4391
|
-
|
4392
|
-
|
4393
|
-
|
4394
|
-
|
4395
|
-
|
4393
|
+
- 0: 已完成
|
4394
|
+
- 1: 全部
|
4395
|
+
- 2: 已失败
|
4396
|
+
- 3: 进行中
|
4397
|
+
- 4: 已完成+删除源文件
|
4398
|
+
- 5: 全部+删除源文件
|
4396
4399
|
"""
|
4397
4400
|
api = complete_proapi("/open/offline/clear_task", base_url)
|
4398
4401
|
if isinstance(payload, int):
|
@@ -7326,9 +7329,9 @@ class P115Client(P115OpenClient):
|
|
7326
7329
|
:payload:
|
7327
7330
|
- type: 0 | 1 | 2 = 0 💡 类型
|
7328
7331
|
|
7329
|
-
|
7330
|
-
|
7331
|
-
|
7332
|
+
- 0: 全部
|
7333
|
+
- 1: 进行中
|
7334
|
+
- 2: 已实现
|
7332
7335
|
|
7333
7336
|
- start: int = 0 💡 开始索引
|
7334
7337
|
- page: int = 1 💡 第几页
|
@@ -7382,9 +7385,9 @@ class P115Client(P115OpenClient):
|
|
7382
7385
|
:payload:
|
7383
7386
|
- type: 0 | 1 | 2 = 0 💡 类型
|
7384
7387
|
|
7385
|
-
|
7386
|
-
|
7387
|
-
|
7388
|
+
- 0: 全部
|
7389
|
+
- 1: 进行中
|
7390
|
+
- 2: 已实现
|
7388
7391
|
|
7389
7392
|
- start: int = 0 💡 开始索引
|
7390
7393
|
- page: int = 1 💡 第几页
|
@@ -9269,9 +9272,9 @@ class P115Client(P115OpenClient):
|
|
9269
9272
|
- file_id: int | str 目录 id,多个用逗号 "," 隔开
|
9270
9273
|
- op: "add" | "delete" | "top" = "add" 操作代码
|
9271
9274
|
|
9272
|
-
|
9273
|
-
|
9274
|
-
|
9275
|
+
- "add": 添加
|
9276
|
+
- "delete": 删除
|
9277
|
+
- "top": 置顶
|
9275
9278
|
"""
|
9276
9279
|
api = complete_webapi("/category/shortcut", base_url=base_url)
|
9277
9280
|
if isinstance(payload, (int, str)):
|
@@ -10472,12 +10475,12 @@ class P115Client(P115OpenClient):
|
|
10472
10475
|
- nf: str = <default> 💡 不要显示文件(即仅显示目录),但如果 show_dir=0,则此参数无效
|
10473
10476
|
- o: str = <default> 💡 用某字段排序
|
10474
10477
|
|
10475
|
-
|
10476
|
-
|
10477
|
-
|
10478
|
-
|
10479
|
-
|
10480
|
-
|
10478
|
+
- "file_name": 文件名
|
10479
|
+
- "file_size": 文件大小
|
10480
|
+
- "file_type": 文件种类
|
10481
|
+
- "user_utime": 修改时间
|
10482
|
+
- "user_ptime": 创建时间
|
10483
|
+
- "user_otime": 上一次打开时间
|
10481
10484
|
|
10482
10485
|
- oof_token: str = <default>
|
10483
10486
|
- qid: int | str = <default>
|
@@ -10494,26 +10497,26 @@ class P115Client(P115OpenClient):
|
|
10494
10497
|
- suffix_type: int = <default>
|
10495
10498
|
- type: int = <default> 💡 文件类型
|
10496
10499
|
|
10497
|
-
|
10498
|
-
|
10499
|
-
|
10500
|
-
|
10501
|
-
|
10502
|
-
|
10503
|
-
|
10504
|
-
|
10505
|
-
|
10506
|
-
|
10507
|
-
|
10508
|
-
|
10509
|
-
|
10510
|
-
|
10511
|
-
|
10512
|
-
|
10513
|
-
|
10514
|
-
|
10515
|
-
|
10516
|
-
|
10500
|
+
- 0: 全部(仅当前目录)
|
10501
|
+
- 1: 文档
|
10502
|
+
- 2: 图片
|
10503
|
+
- 3: 音频
|
10504
|
+
- 4: 视频
|
10505
|
+
- 5: 压缩包
|
10506
|
+
- 6: 软件/应用
|
10507
|
+
- 7: 书籍
|
10508
|
+
- 8: 其它
|
10509
|
+
- 9: 相当于 8
|
10510
|
+
- 10: 相当于 8
|
10511
|
+
- 11: 相当于 8
|
10512
|
+
- 12: ???
|
10513
|
+
- 13: 相当于 3
|
10514
|
+
- 14: ???
|
10515
|
+
- 15: 图片和视频,相当于 2 和 4
|
10516
|
+
- 16: ???
|
10517
|
+
- 17~98: 相当于 8
|
10518
|
+
- 99: 所有文件
|
10519
|
+
- >=100: 相当于 8
|
10517
10520
|
"""
|
10518
10521
|
api = complete_webapi("/files", base_url=base_url)
|
10519
10522
|
if isinstance(payload, (int, str)):
|
@@ -10615,13 +10618,13 @@ class P115Client(P115OpenClient):
|
|
10615
10618
|
- nf: str = <default> 💡 不要显示文件(即仅显示目录),但如果 show_dir=0,则此参数无效
|
10616
10619
|
- o: str = <default> 💡 用某字段排序(未定义的值会被视为 "user_utime")
|
10617
10620
|
|
10618
|
-
|
10619
|
-
|
10620
|
-
|
10621
|
-
|
10622
|
-
|
10623
|
-
|
10624
|
-
|
10621
|
+
- "file_name": 文件名
|
10622
|
+
- "file_size": 文件大小
|
10623
|
+
- "file_type": 文件种类
|
10624
|
+
- "user_etime": 事件时间(无效,效果相当于 "user_utime")
|
10625
|
+
- "user_utime": 修改时间
|
10626
|
+
- "user_ptime": 创建时间(无效,效果相当于 "user_utime")
|
10627
|
+
- "user_otime": 上一次打开时间(无效,效果相当于 "user_utime")
|
10625
10628
|
|
10626
10629
|
- r_all: 0 | 1 = <default>
|
10627
10630
|
- record_open_time: 0 | 1 = 1 💡 是否要记录目录的打开时间
|
@@ -10635,23 +10638,23 @@ class P115Client(P115OpenClient):
|
|
10635
10638
|
- suffix: str = <default> 💡 后缀名(优先级高于 `type`)
|
10636
10639
|
- type: int = <default> 💡 文件类型
|
10637
10640
|
|
10638
|
-
|
10639
|
-
|
10640
|
-
|
10641
|
-
|
10642
|
-
|
10643
|
-
|
10644
|
-
|
10645
|
-
|
10646
|
-
|
10647
|
-
|
10648
|
-
|
10649
|
-
|
10650
|
-
|
10651
|
-
|
10652
|
-
|
10653
|
-
|
10654
|
-
|
10641
|
+
- 0: 全部(仅当前目录)
|
10642
|
+
- 1: 文档
|
10643
|
+
- 2: 图片
|
10644
|
+
- 3: 音频
|
10645
|
+
- 4: 视频
|
10646
|
+
- 5: 压缩包
|
10647
|
+
- 6: 软件/应用
|
10648
|
+
- 7: 书籍
|
10649
|
+
- 8: 其它
|
10650
|
+
- 9: 相当于 8
|
10651
|
+
- 10: 相当于 8
|
10652
|
+
- 11: 相当于 8
|
10653
|
+
- 12: ???
|
10654
|
+
- 13: ???
|
10655
|
+
- 14: ???
|
10656
|
+
- 15: 图片和视频,相当于 2 和 4
|
10657
|
+
- >= 16: 相当于 8
|
10655
10658
|
"""
|
10656
10659
|
api = complete_proapi("/2.0/ufile/files", base_url, app)
|
10657
10660
|
if isinstance(payload, (int, str)):
|
@@ -10745,13 +10748,13 @@ class P115Client(P115OpenClient):
|
|
10745
10748
|
- nf: str = <default> 💡 不要显示文件(即仅显示目录),但如果 show_dir=0,则此参数无效
|
10746
10749
|
- o: str = <default> 💡 用某字段排序(未定义的值会被视为 "user_utime")
|
10747
10750
|
|
10748
|
-
|
10749
|
-
|
10750
|
-
|
10751
|
-
|
10752
|
-
|
10753
|
-
|
10754
|
-
|
10751
|
+
- "file_name": 文件名
|
10752
|
+
- "file_size": 文件大小
|
10753
|
+
- "file_type": 文件种类
|
10754
|
+
- "user_etime": 事件时间(无效,效果相当于 "user_utime")
|
10755
|
+
- "user_utime": 修改时间
|
10756
|
+
- "user_ptime": 创建时间(无效,效果相当于 "user_utime")
|
10757
|
+
- "user_otime": 上一次打开时间(无效,效果相当于 "user_utime")
|
10755
10758
|
|
10756
10759
|
- r_all: 0 | 1 = <default>
|
10757
10760
|
- record_open_time: 0 | 1 = 1 💡 是否要记录目录的打开时间
|
@@ -10765,23 +10768,23 @@ class P115Client(P115OpenClient):
|
|
10765
10768
|
- suffix: str = <default> 💡 后缀名(优先级高于 `type`)
|
10766
10769
|
- type: int = <default> 💡 文件类型
|
10767
10770
|
|
10768
|
-
|
10769
|
-
|
10770
|
-
|
10771
|
-
|
10772
|
-
|
10773
|
-
|
10774
|
-
|
10775
|
-
|
10776
|
-
|
10777
|
-
|
10778
|
-
|
10779
|
-
|
10780
|
-
|
10781
|
-
|
10782
|
-
|
10783
|
-
|
10784
|
-
|
10771
|
+
- 0: 全部(仅当前目录)
|
10772
|
+
- 1: 文档
|
10773
|
+
- 2: 图片
|
10774
|
+
- 3: 音频
|
10775
|
+
- 4: 视频
|
10776
|
+
- 5: 压缩包
|
10777
|
+
- 6: 软件/应用
|
10778
|
+
- 7: 书籍
|
10779
|
+
- 8: 其它
|
10780
|
+
- 9: 相当于 8
|
10781
|
+
- 10: 相当于 8
|
10782
|
+
- 11: 相当于 8
|
10783
|
+
- 12: ???
|
10784
|
+
- 13: ???
|
10785
|
+
- 14: ???
|
10786
|
+
- 15: 图片和视频,相当于 2 和 4
|
10787
|
+
- >= 16: 相当于 8
|
10785
10788
|
"""
|
10786
10789
|
api = complete_proapi("/files", base_url, app)
|
10787
10790
|
if isinstance(payload, (int, str)):
|
@@ -10885,26 +10888,26 @@ class P115Client(P115OpenClient):
|
|
10885
10888
|
- suffix: str = <default> 💡 后缀名(优先级高于 `type`)
|
10886
10889
|
- type: int = <default> 💡 文件类型
|
10887
10890
|
|
10888
|
-
|
10889
|
-
|
10890
|
-
|
10891
|
-
|
10892
|
-
|
10893
|
-
|
10894
|
-
|
10895
|
-
|
10896
|
-
|
10897
|
-
|
10898
|
-
|
10899
|
-
|
10900
|
-
|
10901
|
-
|
10902
|
-
|
10903
|
-
|
10904
|
-
|
10905
|
-
|
10906
|
-
|
10907
|
-
|
10891
|
+
- 0: 全部(仅当前目录)
|
10892
|
+
- 1: 文档
|
10893
|
+
- 2: 图片
|
10894
|
+
- 3: 音频
|
10895
|
+
- 4: 视频
|
10896
|
+
- 5: 压缩包
|
10897
|
+
- 6: 软件/应用
|
10898
|
+
- 7: 书籍
|
10899
|
+
- 8: 其它
|
10900
|
+
- 9: 相当于 8
|
10901
|
+
- 10: 相当于 8
|
10902
|
+
- 11: 相当于 8
|
10903
|
+
- 12: ???
|
10904
|
+
- 13: 相当于 3
|
10905
|
+
- 14: ???
|
10906
|
+
- 15: 图片和视频,相当于 2 和 4
|
10907
|
+
- 16: ???
|
10908
|
+
- 17~98: 相当于 8
|
10909
|
+
- 99: 所有文件
|
10910
|
+
- >=100: 相当于 8
|
10908
10911
|
"""
|
10909
10912
|
api = complete_api("/natsort/files.php", "aps", base_url=base_url)
|
10910
10913
|
if isinstance(payload, (int, str)):
|
@@ -11072,6 +11075,209 @@ class P115Client(P115OpenClient):
|
|
11072
11075
|
|
11073
11076
|
fs_video_history_set = fs_files_history_set
|
11074
11077
|
|
11078
|
+
|
11079
|
+
@overload
|
11080
|
+
def fs_files_image(
|
11081
|
+
self,
|
11082
|
+
payload: int | str | dict,
|
11083
|
+
/,
|
11084
|
+
base_url: bool | str | Callable[[], str] = False,
|
11085
|
+
*,
|
11086
|
+
async_: Literal[False] = False,
|
11087
|
+
**request_kwargs,
|
11088
|
+
) -> dict:
|
11089
|
+
...
|
11090
|
+
@overload
|
11091
|
+
def fs_files_image(
|
11092
|
+
self,
|
11093
|
+
payload: int | str | dict,
|
11094
|
+
/,
|
11095
|
+
base_url: bool | str | Callable[[], str] = False,
|
11096
|
+
*,
|
11097
|
+
async_: Literal[True],
|
11098
|
+
**request_kwargs,
|
11099
|
+
) -> Coroutine[Any, Any, dict]:
|
11100
|
+
...
|
11101
|
+
def fs_files_image(
|
11102
|
+
self,
|
11103
|
+
payload: int | str | dict,
|
11104
|
+
/,
|
11105
|
+
base_url: bool | str | Callable[[], str] = False,
|
11106
|
+
*,
|
11107
|
+
async_: Literal[False, True] = False,
|
11108
|
+
**request_kwargs,
|
11109
|
+
) -> dict | Coroutine[Any, Any, dict]:
|
11110
|
+
"""获取目录中的图片列表和基本信息
|
11111
|
+
|
11112
|
+
GET https://webapi.115.com/files/imglist
|
11113
|
+
|
11114
|
+
.. danger::
|
11115
|
+
这个函数大概是有 bug 的,不推荐使用
|
11116
|
+
|
11117
|
+
.. attention::
|
11118
|
+
只能获取直属于 `cid` 所在目录的图片,不会遍历整个目录树
|
11119
|
+
|
11120
|
+
:payload:
|
11121
|
+
- cid: int | str 💡 目录 id,对应 parent_id
|
11122
|
+
- file_id: int | str 💡 不能是 0,可以不同于 `cid`,必须是任何一个有效的 id(单纯是被检查一下)
|
11123
|
+
- limit: int = <default> 💡 最多返回数量
|
11124
|
+
- offset: int = 0 💡 索引偏移,索引从 0 开始计算
|
11125
|
+
- is_asc: 0 | 1 = <default> 💡 是否升序排列
|
11126
|
+
- next: 0 | 1 = <default>
|
11127
|
+
- order: str = <default> 💡 用某字段排序
|
11128
|
+
|
11129
|
+
- 文件名:"file_name"
|
11130
|
+
- 文件大小:"file_size"
|
11131
|
+
- 文件种类:"file_type"
|
11132
|
+
- 修改时间:"user_utime"
|
11133
|
+
- 创建时间:"user_ptime"
|
11134
|
+
- 上一次打开时间:"user_otime"
|
11135
|
+
"""
|
11136
|
+
api = complete_webapi("/files/imglist", base_url=base_url)
|
11137
|
+
if isinstance(payload, (int, str)):
|
11138
|
+
payload = {"limit": 32, "offset": 0, "cid": payload}
|
11139
|
+
else:
|
11140
|
+
payload = {"limit": 32, "offset": 0, "cid": 0, **payload}
|
11141
|
+
if cid := payload.get("cid"):
|
11142
|
+
payload.setdefault("file_id", cid)
|
11143
|
+
return self.request(url=api, params=payload, async_=async_, **request_kwargs)
|
11144
|
+
|
11145
|
+
@overload
|
11146
|
+
def fs_files_image_app(
|
11147
|
+
self,
|
11148
|
+
payload: int | str | dict = 0,
|
11149
|
+
/,
|
11150
|
+
app: str = "android",
|
11151
|
+
base_url: bool | str | Callable[[], str] = False,
|
11152
|
+
*,
|
11153
|
+
async_: Literal[False] = False,
|
11154
|
+
**request_kwargs,
|
11155
|
+
) -> dict:
|
11156
|
+
...
|
11157
|
+
@overload
|
11158
|
+
def fs_files_image_app(
|
11159
|
+
self,
|
11160
|
+
payload: int | str | dict = 0,
|
11161
|
+
/,
|
11162
|
+
app: str = "android",
|
11163
|
+
base_url: bool | str | Callable[[], str] = False,
|
11164
|
+
*,
|
11165
|
+
async_: Literal[True],
|
11166
|
+
**request_kwargs,
|
11167
|
+
) -> Coroutine[Any, Any, dict]:
|
11168
|
+
...
|
11169
|
+
def fs_files_image_app(
|
11170
|
+
self,
|
11171
|
+
payload: int | str | dict = 0,
|
11172
|
+
/,
|
11173
|
+
app: str = "android",
|
11174
|
+
base_url: bool | str | Callable[[], str] = False,
|
11175
|
+
*,
|
11176
|
+
async_: Literal[False, True] = False,
|
11177
|
+
**request_kwargs,
|
11178
|
+
) -> dict | Coroutine[Any, Any, dict]:
|
11179
|
+
"""获取目录中的图片列表和基本信息
|
11180
|
+
|
11181
|
+
GET https://proapi.115.com/android/files/imglist
|
11182
|
+
|
11183
|
+
:payload:
|
11184
|
+
- cid: int | str = 0 💡 目录 id,对应 parent_id
|
11185
|
+
- limit: int = 32 💡 一页大小,建议控制在 <= 9000,不然会报错
|
11186
|
+
- offset: int = 0 💡 索引偏移,索引从 0 开始计算
|
11187
|
+
|
11188
|
+
- aid: int | str = 1 💡 area_id。1:正常文件 7:回收站文件 12:瞬间文件 120:彻底删除文件、简历附件
|
11189
|
+
- asc: 0 | 1 = <default> 💡 是否升序排列
|
11190
|
+
- cur: 0 | 1 = <default> 💡 只罗列当前目录
|
11191
|
+
- o: str = <default> 💡 用某字段排序
|
11192
|
+
|
11193
|
+
- 文件名:"file_name"
|
11194
|
+
- 文件大小:"file_size"
|
11195
|
+
- 文件种类:"file_type"
|
11196
|
+
- 修改时间:"user_utime"
|
11197
|
+
- 创建时间:"user_ptime"
|
11198
|
+
- 上一次打开时间:"user_otime"
|
11199
|
+
"""
|
11200
|
+
api = complete_proapi("/files/imglist", base_url, app)
|
11201
|
+
if isinstance(payload, (int, str)):
|
11202
|
+
payload = {"limit": 32, "offset": 0, "aid": 1, "cid": payload}
|
11203
|
+
else:
|
11204
|
+
payload = {"limit": 32, "offset": 0, "aid": 1, "cid": 0, **payload}
|
11205
|
+
return self.request(url=api, params=payload, async_=async_, **request_kwargs)
|
11206
|
+
|
11207
|
+
@overload
|
11208
|
+
def fs_files_media_app(
|
11209
|
+
self,
|
11210
|
+
payload: int | str | dict = 0,
|
11211
|
+
/,
|
11212
|
+
app: str = "android",
|
11213
|
+
base_url: bool | str | Callable[[], str] = False,
|
11214
|
+
*,
|
11215
|
+
async_: Literal[False] = False,
|
11216
|
+
**request_kwargs,
|
11217
|
+
) -> dict:
|
11218
|
+
...
|
11219
|
+
@overload
|
11220
|
+
def fs_files_media_app(
|
11221
|
+
self,
|
11222
|
+
payload: int | str | dict = 0,
|
11223
|
+
/,
|
11224
|
+
app: str = "android",
|
11225
|
+
base_url: bool | str | Callable[[], str] = False,
|
11226
|
+
*,
|
11227
|
+
async_: Literal[True],
|
11228
|
+
**request_kwargs,
|
11229
|
+
) -> Coroutine[Any, Any, dict]:
|
11230
|
+
...
|
11231
|
+
def fs_files_media_app(
|
11232
|
+
self,
|
11233
|
+
payload: int | str | dict = 0,
|
11234
|
+
/,
|
11235
|
+
app: str = "android",
|
11236
|
+
base_url: bool | str | Callable[[], str] = False,
|
11237
|
+
*,
|
11238
|
+
async_: Literal[False, True] = False,
|
11239
|
+
**request_kwargs,
|
11240
|
+
) -> dict | Coroutine[Any, Any, dict]:
|
11241
|
+
"""获取目录中的文件列表和基本信息
|
11242
|
+
|
11243
|
+
GET https://proapi.115.com/android/files/medialist
|
11244
|
+
|
11245
|
+
:payload:
|
11246
|
+
- cid: int | str = 0 💡 目录 id,对应 parent_id
|
11247
|
+
- limit: int = 32 💡 一页大小,建议控制在 <= 9000,不然会报错
|
11248
|
+
- offset: int = 0 💡 索引偏移,索引从 0 开始计算
|
11249
|
+
|
11250
|
+
- aid: int | str = 1 💡 area_id。1:正常文件 7:回收站文件 12:瞬间文件 120:彻底删除文件、简历附件
|
11251
|
+
- asc: 0 | 1 = <default> 💡 是否升序排列
|
11252
|
+
- cur: 0 | 1 = <default> 💡 只罗列当前目录
|
11253
|
+
- o: str = <default> 💡 用某字段排序
|
11254
|
+
|
11255
|
+
- 文件名:"file_name"
|
11256
|
+
- 文件大小:"file_size"
|
11257
|
+
- 文件种类:"file_type"
|
11258
|
+
- 修改时间:"user_utime"
|
11259
|
+
- 创建时间:"user_ptime"
|
11260
|
+
- 上一次打开时间:"user_otime"
|
11261
|
+
|
11262
|
+
- type: int = 0 💡 文件类型
|
11263
|
+
|
11264
|
+
- 0: 相当于 2
|
11265
|
+
- 1: 文档
|
11266
|
+
- 2: 图片
|
11267
|
+
- 3: 音频
|
11268
|
+
- 4: 视频
|
11269
|
+
- 5: 压缩包
|
11270
|
+
- 6: 软件/应用
|
11271
|
+
- 7: 书籍
|
11272
|
+
- ...: > 7 则相当于 1,< 0 则是全部文件
|
11273
|
+
"""
|
11274
|
+
api = complete_proapi("/files/medialist", base_url, app)
|
11275
|
+
if isinstance(payload, (int, str)):
|
11276
|
+
payload = {"limit": 32, "offset": 0, "aid": 1, "type": 0, "cid": payload}
|
11277
|
+
else:
|
11278
|
+
payload = {"limit": 32, "offset": 0, "aid": 1, "type": 0, "cid": 0, **payload}
|
11279
|
+
return self.request(url=api, params=payload, async_=async_, **request_kwargs)
|
11280
|
+
|
11075
11281
|
@overload
|
11076
11282
|
def fs_files_second_type(
|
11077
11283
|
self,
|
@@ -11111,13 +11317,13 @@ class P115Client(P115OpenClient):
|
|
11111
11317
|
- cid: int | str = 0 💡 目录 id,对应 parent_id
|
11112
11318
|
- type: int = 1 💡 文件类型
|
11113
11319
|
|
11114
|
-
|
11115
|
-
|
11116
|
-
|
11117
|
-
|
11118
|
-
|
11119
|
-
|
11120
|
-
|
11320
|
+
- 1: 文档
|
11321
|
+
- 2: 图片
|
11322
|
+
- 3: 音频
|
11323
|
+
- 4: 视频
|
11324
|
+
- 5: 压缩包
|
11325
|
+
- 6: 软件/应用
|
11326
|
+
- 7: 书籍
|
11121
11327
|
|
11122
11328
|
- file_label: int | str = <default> 💡 标签 id,多个用逗号 "," 隔开
|
11123
11329
|
"""
|
@@ -11676,15 +11882,15 @@ class P115Client(P115OpenClient):
|
|
11676
11882
|
:payload:
|
11677
11883
|
- type: int | str = 0 💡 类型(??表示还未搞清楚),多个用逗号 "," 隔开
|
11678
11884
|
|
11679
|
-
|
11680
|
-
|
11681
|
-
|
11682
|
-
|
11683
|
-
|
11684
|
-
|
11685
|
-
|
11686
|
-
|
11687
|
-
|
11885
|
+
- 全部: 0
|
11886
|
+
- ??: 1
|
11887
|
+
- 离线下载: 2
|
11888
|
+
- 播放视频: 3
|
11889
|
+
- 上传: 4
|
11890
|
+
- ??: 5
|
11891
|
+
- ??: 6(似乎是一些在离线、转存等过程中有重名的目录)
|
11892
|
+
- 接收: 7
|
11893
|
+
- 移动: 8
|
11688
11894
|
|
11689
11895
|
- with_file: 0 | 1 = 0
|
11690
11896
|
"""
|
@@ -11831,15 +12037,15 @@ class P115Client(P115OpenClient):
|
|
11831
12037
|
:payload:
|
11832
12038
|
- type: int | str = 0 💡 类型(??表示还未搞清楚),多个用逗号 "," 隔开
|
11833
12039
|
|
11834
|
-
|
11835
|
-
|
11836
|
-
|
11837
|
-
|
11838
|
-
|
11839
|
-
|
11840
|
-
|
11841
|
-
|
11842
|
-
|
12040
|
+
- 全部: 0
|
12041
|
+
- ??: 1
|
12042
|
+
- 离线下载: 2
|
12043
|
+
- 播放视频: 3
|
12044
|
+
- 上传: 4
|
12045
|
+
- ??: 5
|
12046
|
+
- ??: 6(似乎是一些在离线、转存等过程中有重名的目录)
|
12047
|
+
- 接收: 7
|
12048
|
+
- 移动: 8
|
11843
12049
|
|
11844
12050
|
- with_file: 0 | 1 = 0
|
11845
12051
|
"""
|
@@ -11891,15 +12097,15 @@ class P115Client(P115OpenClient):
|
|
11891
12097
|
- played_end: 0 | 1 = <default> 💡 是否已经播放完
|
11892
12098
|
- type: int = <default> 💡 类型(??表示还未搞清楚),多个用逗号 "," 隔开
|
11893
12099
|
|
11894
|
-
|
11895
|
-
|
11896
|
-
|
11897
|
-
|
11898
|
-
|
11899
|
-
|
11900
|
-
|
11901
|
-
|
11902
|
-
|
12100
|
+
- 全部: 0
|
12101
|
+
- ??: 1
|
12102
|
+
- 离线下载: 2
|
12103
|
+
- 播放视频: 3
|
12104
|
+
- 上传: 4
|
12105
|
+
- ??: 5
|
12106
|
+
- ??: 6(似乎是一些在离线、转存等过程中有重名的目录)
|
12107
|
+
- 接收: 7
|
12108
|
+
- 移动: 8
|
11903
12109
|
"""
|
11904
12110
|
api = complete_webapi("/history/list", base_url=base_url)
|
11905
12111
|
if isinstance(payload, (int, str)):
|
@@ -11952,15 +12158,15 @@ class P115Client(P115OpenClient):
|
|
11952
12158
|
- played_end: 0 | 1 = <default>
|
11953
12159
|
- type: int = <default> 💡 类型(??表示还未搞清楚),多个用逗号 "," 隔开
|
11954
12160
|
|
11955
|
-
|
11956
|
-
|
11957
|
-
|
11958
|
-
|
11959
|
-
|
11960
|
-
|
11961
|
-
|
11962
|
-
|
11963
|
-
|
12161
|
+
- 全部: 0
|
12162
|
+
- ??: 1
|
12163
|
+
- 离线下载: 2
|
12164
|
+
- 播放视频: 3
|
12165
|
+
- 上传: 4
|
12166
|
+
- ??: 5
|
12167
|
+
- ??: 6(似乎是一些在离线、转存等过程中有重名的目录)
|
12168
|
+
- 接收: 7
|
12169
|
+
- 移动: 8
|
11964
12170
|
"""
|
11965
12171
|
api = complete_proapi("/history/list", base_url, app)
|
11966
12172
|
if isinstance(payload, (int, str)):
|
@@ -12190,134 +12396,6 @@ class P115Client(P115OpenClient):
|
|
12190
12396
|
payload = {"imgurl": payload}
|
12191
12397
|
return self.request(url=api, method="POST", data=payload, async_=async_, **request_kwargs)
|
12192
12398
|
|
12193
|
-
@overload
|
12194
|
-
def fs_imglist(
|
12195
|
-
self,
|
12196
|
-
payload: int | str | dict,
|
12197
|
-
/,
|
12198
|
-
base_url: bool | str | Callable[[], str] = False,
|
12199
|
-
*,
|
12200
|
-
async_: Literal[False] = False,
|
12201
|
-
**request_kwargs,
|
12202
|
-
) -> dict:
|
12203
|
-
...
|
12204
|
-
@overload
|
12205
|
-
def fs_imglist(
|
12206
|
-
self,
|
12207
|
-
payload: int | str | dict,
|
12208
|
-
/,
|
12209
|
-
base_url: bool | str | Callable[[], str] = False,
|
12210
|
-
*,
|
12211
|
-
async_: Literal[True],
|
12212
|
-
**request_kwargs,
|
12213
|
-
) -> Coroutine[Any, Any, dict]:
|
12214
|
-
...
|
12215
|
-
def fs_imglist(
|
12216
|
-
self,
|
12217
|
-
payload: int | str | dict,
|
12218
|
-
/,
|
12219
|
-
base_url: bool | str | Callable[[], str] = False,
|
12220
|
-
*,
|
12221
|
-
async_: Literal[False, True] = False,
|
12222
|
-
**request_kwargs,
|
12223
|
-
) -> dict | Coroutine[Any, Any, dict]:
|
12224
|
-
"""获取目录中的图片列表和基本信息
|
12225
|
-
|
12226
|
-
GET https://webapi.115.com/files/imglist
|
12227
|
-
|
12228
|
-
.. danger::
|
12229
|
-
这个函数大概是有 bug 的,不推荐使用
|
12230
|
-
|
12231
|
-
.. attention::
|
12232
|
-
只能获取直属于 `cid` 所在目录的图片,不会遍历整个目录树
|
12233
|
-
|
12234
|
-
:payload:
|
12235
|
-
- cid: int | str 💡 目录 id,对应 parent_id
|
12236
|
-
- file_id: int | str 💡 不能是 0,可以不同于 `cid`,必须是任何一个有效的 id(单纯是被检查一下)
|
12237
|
-
- limit: int = <default> 💡 最多返回数量
|
12238
|
-
- offset: int = 0 💡 索引偏移,索引从 0 开始计算
|
12239
|
-
- is_asc: 0 | 1 = <default> 💡 是否升序排列
|
12240
|
-
- next: 0 | 1 = <default>
|
12241
|
-
- order: str = <default> 💡 用某字段排序
|
12242
|
-
|
12243
|
-
- 文件名:"file_name"
|
12244
|
-
- 文件大小:"file_size"
|
12245
|
-
- 文件种类:"file_type"
|
12246
|
-
- 修改时间:"user_utime"
|
12247
|
-
- 创建时间:"user_ptime"
|
12248
|
-
- 上一次打开时间:"user_otime"
|
12249
|
-
"""
|
12250
|
-
api = complete_webapi("/files/imglist", base_url=base_url)
|
12251
|
-
if isinstance(payload, (int, str)):
|
12252
|
-
payload = {"limit": 32, "offset": 0, "cid": payload}
|
12253
|
-
else:
|
12254
|
-
payload = {"limit": 32, "offset": 0, "cid": 0, **payload}
|
12255
|
-
if cid := payload.get("cid"):
|
12256
|
-
payload.setdefault("file_id", cid)
|
12257
|
-
return self.request(url=api, params=payload, async_=async_, **request_kwargs)
|
12258
|
-
|
12259
|
-
@overload
|
12260
|
-
def fs_imglist_app(
|
12261
|
-
self,
|
12262
|
-
payload: int | str | dict = 0,
|
12263
|
-
/,
|
12264
|
-
app: str = "android",
|
12265
|
-
base_url: bool | str | Callable[[], str] = False,
|
12266
|
-
*,
|
12267
|
-
async_: Literal[False] = False,
|
12268
|
-
**request_kwargs,
|
12269
|
-
) -> dict:
|
12270
|
-
...
|
12271
|
-
@overload
|
12272
|
-
def fs_imglist_app(
|
12273
|
-
self,
|
12274
|
-
payload: int | str | dict = 0,
|
12275
|
-
/,
|
12276
|
-
app: str = "android",
|
12277
|
-
base_url: bool | str | Callable[[], str] = False,
|
12278
|
-
*,
|
12279
|
-
async_: Literal[True],
|
12280
|
-
**request_kwargs,
|
12281
|
-
) -> Coroutine[Any, Any, dict]:
|
12282
|
-
...
|
12283
|
-
def fs_imglist_app(
|
12284
|
-
self,
|
12285
|
-
payload: int | str | dict = 0,
|
12286
|
-
/,
|
12287
|
-
app: str = "android",
|
12288
|
-
base_url: bool | str | Callable[[], str] = False,
|
12289
|
-
*,
|
12290
|
-
async_: Literal[False, True] = False,
|
12291
|
-
**request_kwargs,
|
12292
|
-
) -> dict | Coroutine[Any, Any, dict]:
|
12293
|
-
"""获取目录中的图片列表和基本信息
|
12294
|
-
|
12295
|
-
GET https://proapi.115.com/android/files/imglist
|
12296
|
-
|
12297
|
-
:payload:
|
12298
|
-
- cid: int | str = 0 💡 目录 id,对应 parent_id
|
12299
|
-
- limit: int = 32 💡 一页大小,建议控制在 <= 9000,不然会报错
|
12300
|
-
- offset: int = 0 💡 索引偏移,索引从 0 开始计算
|
12301
|
-
|
12302
|
-
- aid: int | str = 1 💡 area_id。1:正常文件 7:回收站文件 12:瞬间文件 120:彻底删除文件、简历附件
|
12303
|
-
- asc: 0 | 1 = <default> 💡 是否升序排列
|
12304
|
-
- cur: 0 | 1 = <default> 💡 只罗列当前目录
|
12305
|
-
- o: str = <default> 💡 用某字段排序
|
12306
|
-
|
12307
|
-
- 文件名:"file_name"
|
12308
|
-
- 文件大小:"file_size"
|
12309
|
-
- 文件种类:"file_type"
|
12310
|
-
- 修改时间:"user_utime"
|
12311
|
-
- 创建时间:"user_ptime"
|
12312
|
-
- 上一次打开时间:"user_otime"
|
12313
|
-
"""
|
12314
|
-
api = complete_proapi("/files/imglist", base_url, app)
|
12315
|
-
if isinstance(payload, (int, str)):
|
12316
|
-
payload = {"limit": 32, "offset": 0, "aid": 1, "cid": payload}
|
12317
|
-
else:
|
12318
|
-
payload = {"limit": 32, "offset": 0, "aid": 1, "cid": 0, **payload}
|
12319
|
-
return self.request(url=api, params=payload, async_=async_, **request_kwargs)
|
12320
|
-
|
12321
12399
|
@overload
|
12322
12400
|
def fs_index_info(
|
12323
12401
|
self,
|
@@ -12681,9 +12759,9 @@ class P115Client(P115OpenClient):
|
|
12681
12759
|
- keyword: str = <default> 💡 搜索关键词
|
12682
12760
|
- sort: "name" | "update_time" | "create_time" = <default> 💡 排序字段
|
12683
12761
|
|
12684
|
-
|
12685
|
-
|
12686
|
-
|
12762
|
+
- 名称: "name"
|
12763
|
+
- 创建时间: "create_time"
|
12764
|
+
- 更新时间: "update_time"
|
12687
12765
|
|
12688
12766
|
- order: "asc" | "desc" = <default> 💡 排序顺序:"asc"(升序), "desc"(降序)
|
12689
12767
|
"""
|
@@ -12738,9 +12816,9 @@ class P115Client(P115OpenClient):
|
|
12738
12816
|
- keyword: str = <default> 💡 搜索关键词
|
12739
12817
|
- sort: "name" | "update_time" | "create_time" = <default> 💡 排序字段
|
12740
12818
|
|
12741
|
-
|
12742
|
-
|
12743
|
-
|
12819
|
+
- 名称: "name"
|
12820
|
+
- 创建时间: "create_time"
|
12821
|
+
- 更新时间: "update_time"
|
12744
12822
|
|
12745
12823
|
- order: "asc" | "desc" = <default> 💡 排序顺序:"asc"(升序), "desc"(降序)
|
12746
12824
|
"""
|
@@ -12875,10 +12953,10 @@ class P115Client(P115OpenClient):
|
|
12875
12953
|
:payload:
|
12876
12954
|
- action: "add" | "remove" | "reset" | "replace" 💡 操作名
|
12877
12955
|
|
12878
|
-
|
12879
|
-
|
12880
|
-
|
12881
|
-
|
12956
|
+
- "add": 添加
|
12957
|
+
- "remove": 移除
|
12958
|
+
- "reset": 重设
|
12959
|
+
- "replace": 替换
|
12882
12960
|
|
12883
12961
|
- file_ids: int | str 💡 文件或目录 id,多个用逗号 "," 隔开
|
12884
12962
|
- file_label: int | str = <default> 💡 标签 id,多个用逗号 "," 隔开
|
@@ -12928,10 +13006,10 @@ class P115Client(P115OpenClient):
|
|
12928
13006
|
:payload:
|
12929
13007
|
- action: "add" | "remove" | "reset" | "replace" 💡 操作名
|
12930
13008
|
|
12931
|
-
|
12932
|
-
|
12933
|
-
|
12934
|
-
|
13009
|
+
- "add": 添加
|
13010
|
+
- "remove": 移除
|
13011
|
+
- "reset": 重设
|
13012
|
+
- "replace": 替换
|
12935
13013
|
|
12936
13014
|
- file_ids: int | str 💡 文件或目录 id,多个用逗号 "," 隔开
|
12937
13015
|
- file_label: int | str = <default> 💡 标签 id,多个用逗号 "," 隔开
|
@@ -14204,12 +14282,12 @@ class P115Client(P115OpenClient):
|
|
14204
14282
|
:payload:
|
14205
14283
|
- user_order: str 💡 用某字段排序
|
14206
14284
|
|
14207
|
-
|
14208
|
-
|
14209
|
-
|
14210
|
-
|
14211
|
-
|
14212
|
-
|
14285
|
+
- "file_name": 文件名
|
14286
|
+
- "file_size": 文件大小
|
14287
|
+
- "file_type": 文件种类
|
14288
|
+
- "user_utime": 修改时间
|
14289
|
+
- "user_ptime": 创建时间
|
14290
|
+
- "user_otime": 上一次打开时间
|
14213
14291
|
|
14214
14292
|
- file_id: int | str = 0 💡 目录 id,对应 parent_id
|
14215
14293
|
- user_asc: 0 | 1 = <default> 💡 是否升序排列
|
@@ -14267,12 +14345,12 @@ class P115Client(P115OpenClient):
|
|
14267
14345
|
:payload:
|
14268
14346
|
- user_order: str 💡 用某字段排序
|
14269
14347
|
|
14270
|
-
|
14271
|
-
|
14272
|
-
|
14273
|
-
|
14274
|
-
|
14275
|
-
|
14348
|
+
- "file_name": 文件名
|
14349
|
+
- "file_size": 文件大小
|
14350
|
+
- "file_type": 文件种类
|
14351
|
+
- "user_utime": 修改时间
|
14352
|
+
- "user_ptime": 创建时间
|
14353
|
+
- "user_otime": 上一次打开时间
|
14276
14354
|
|
14277
14355
|
- file_id: int | str = 0 💡 目录 id,对应 parent_id
|
14278
14356
|
- user_asc: 0 | 1 = <default> 💡 是否升序排列
|
@@ -14715,12 +14793,12 @@ class P115Client(P115OpenClient):
|
|
14715
14793
|
- limit: int = 32 💡 一页大小,意思就是 page_size
|
14716
14794
|
- o: str = <default> 💡 用某字段排序
|
14717
14795
|
|
14718
|
-
|
14719
|
-
|
14720
|
-
|
14721
|
-
|
14722
|
-
|
14723
|
-
|
14796
|
+
- "file_name": 文件名
|
14797
|
+
- "file_size": 文件大小
|
14798
|
+
- "file_type": 文件种类
|
14799
|
+
- "user_utime": 修改时间
|
14800
|
+
- "user_ptime": 创建时间
|
14801
|
+
- "user_otime": 上一次打开时间
|
14724
14802
|
|
14725
14803
|
- offset: int = 0 💡 索引偏移,索引从 0 开始计算
|
14726
14804
|
- pick_code: str = <default> 💡 是否查询提取码,如果该值为 1 则查询提取码为 `search_value` 的文件
|
@@ -14731,15 +14809,15 @@ class P115Client(P115OpenClient):
|
|
14731
14809
|
- suffix: str = <default> 💡 文件后缀(扩展名),优先级高于 `type`
|
14732
14810
|
- type: int = <default> 💡 文件类型
|
14733
14811
|
|
14734
|
-
|
14735
|
-
|
14736
|
-
|
14737
|
-
|
14738
|
-
|
14739
|
-
|
14740
|
-
|
14741
|
-
|
14742
|
-
|
14812
|
+
- 0: 全部(仅当前目录)
|
14813
|
+
- 1: 文档
|
14814
|
+
- 2: 图片
|
14815
|
+
- 3: 音频
|
14816
|
+
- 4: 视频
|
14817
|
+
- 5: 压缩包
|
14818
|
+
- 6: 软件/应用
|
14819
|
+
- 7: 书籍
|
14820
|
+
- 99: 所有文件
|
14743
14821
|
"""
|
14744
14822
|
api = complete_webapi("/files/search", base_url=base_url)
|
14745
14823
|
if isinstance(payload, str):
|
@@ -14812,12 +14890,12 @@ class P115Client(P115OpenClient):
|
|
14812
14890
|
- limit: int = 32 💡 一页大小,意思就是 page_size
|
14813
14891
|
- o: str = <default> 💡 用某字段排序
|
14814
14892
|
|
14815
|
-
|
14816
|
-
|
14817
|
-
|
14818
|
-
|
14819
|
-
|
14820
|
-
|
14893
|
+
- "file_name": 文件名
|
14894
|
+
- "file_size": 文件大小
|
14895
|
+
- "file_type": 文件种类
|
14896
|
+
- "user_utime": 修改时间
|
14897
|
+
- "user_ptime": 创建时间
|
14898
|
+
- "user_otime": 上一次打开时间
|
14821
14899
|
|
14822
14900
|
- offset: int = 0 💡 索引偏移,索引从 0 开始计算
|
14823
14901
|
- pick_code: str = <default> 💡 是否查询提取码,如果该值为 1 则查询提取码为 `search_value` 的文件
|
@@ -14828,15 +14906,15 @@ class P115Client(P115OpenClient):
|
|
14828
14906
|
- suffix: str = <default> 💡 后缀名(优先级高于 `type`)
|
14829
14907
|
- type: int = <default> 💡 文件类型
|
14830
14908
|
|
14831
|
-
|
14832
|
-
|
14833
|
-
|
14834
|
-
|
14835
|
-
|
14836
|
-
|
14837
|
-
|
14838
|
-
|
14839
|
-
|
14909
|
+
- 0: 全部(仅当前目录)
|
14910
|
+
- 1: 文档
|
14911
|
+
- 2: 图片
|
14912
|
+
- 3: 音频
|
14913
|
+
- 4: 视频
|
14914
|
+
- 5: 压缩包
|
14915
|
+
- 6: 软件/应用
|
14916
|
+
- 7: 书籍
|
14917
|
+
- 99: 所有文件
|
14840
14918
|
|
14841
14919
|
- version: str = <default> 💡 版本号,比如 3.1
|
14842
14920
|
"""
|
@@ -14913,12 +14991,12 @@ class P115Client(P115OpenClient):
|
|
14913
14991
|
- lte_day: str 💡 搜索结果匹配的结束时间;格式:YYYY-MM-DD
|
14914
14992
|
- o: str = <default> 💡 用某字段排序
|
14915
14993
|
|
14916
|
-
|
14917
|
-
|
14918
|
-
|
14919
|
-
|
14920
|
-
|
14921
|
-
|
14994
|
+
- "file_name": 文件名
|
14995
|
+
- "file_size": 文件大小
|
14996
|
+
- "file_type": 文件种类
|
14997
|
+
- "user_utime": 修改时间
|
14998
|
+
- "user_ptime": 创建时间
|
14999
|
+
- "user_otime": 上一次打开时间
|
14922
15000
|
|
14923
15001
|
- offset: int = 0 💡 索引偏移,索引从 0 开始计算
|
14924
15002
|
- pick_code: str = <default> 💡 是否查询提取码,如果该值为 1 则查询提取码为 `search_value` 的文件
|
@@ -14929,15 +15007,15 @@ class P115Client(P115OpenClient):
|
|
14929
15007
|
- suffix: str = <default> 💡 后缀名(优先级高于 `type`)
|
14930
15008
|
- type: int = <default> 💡 文件类型
|
14931
15009
|
|
14932
|
-
|
14933
|
-
|
14934
|
-
|
14935
|
-
|
14936
|
-
|
14937
|
-
|
14938
|
-
|
14939
|
-
|
14940
|
-
|
15010
|
+
- 0: 全部(仅当前目录)
|
15011
|
+
- 1: 文档
|
15012
|
+
- 2: 图片
|
15013
|
+
- 3: 音频
|
15014
|
+
- 4: 视频
|
15015
|
+
- 5: 压缩包
|
15016
|
+
- 6: 软件/应用
|
15017
|
+
- 7: 书籍
|
15018
|
+
- 99: 所有文件
|
14941
15019
|
|
14942
15020
|
- version: str = <default> 💡 版本号,比如 3.1
|
14943
15021
|
"""
|
@@ -15994,24 +16072,24 @@ class P115Client(P115OpenClient):
|
|
15994
16072
|
:payload:
|
15995
16073
|
- type: str = "" 💡 操作类型,若不指定则是全部
|
15996
16074
|
|
15997
|
-
|
15998
|
-
|
15999
|
-
|
16000
|
-
|
16001
|
-
|
16002
|
-
|
16003
|
-
|
16004
|
-
|
16005
|
-
|
16006
|
-
|
16007
|
-
|
16008
|
-
|
16009
|
-
|
16010
|
-
|
16011
|
-
|
16012
|
-
|
16013
|
-
|
16014
|
-
|
16075
|
+
- "upload_image_file": 1 💡 上传图片
|
16076
|
+
- "upload_file": 2 💡 上传文件或目录(不包括图片)
|
16077
|
+
- "star_image": 3 💡 给图片设置星标
|
16078
|
+
- "star_file": 4 💡 给文件或目录设置星标(不包括图片)
|
16079
|
+
- "move_image_file": 5 💡 移动图片
|
16080
|
+
- "move_file": 6 💡 移动文件或目录(不包括图片)
|
16081
|
+
- "browse_image": 7 💡 浏览图片
|
16082
|
+
- "browse_video": 8 💡 浏览视频
|
16083
|
+
- "browse_audio": 9 💡 浏览音频
|
16084
|
+
- "browse_document": 10 💡 浏览文档
|
16085
|
+
- "receive_files": 14 💡 接收文件
|
16086
|
+
- "new_folder": 17 💡 新增目录
|
16087
|
+
- "copy_folder": 18 💡 复制目录
|
16088
|
+
- "folder_label": 19 💡 目录设置标签
|
16089
|
+
- "folder_rename": 20 💡 目录改名
|
16090
|
+
- "delete_file": 22 💡 删除文件或目录
|
16091
|
+
- "copy_file": ? 💡 复制文件(未实现)
|
16092
|
+
- "rename_file": ? 💡 文件改名(未实现)
|
16015
16093
|
|
16016
16094
|
- limit: int = 32 💡 最大值为 1_000
|
16017
16095
|
- offset: int = 0
|
@@ -16065,24 +16143,24 @@ class P115Client(P115OpenClient):
|
|
16065
16143
|
:payload:
|
16066
16144
|
- type: str = "" 💡 操作类型
|
16067
16145
|
|
16068
|
-
|
16069
|
-
|
16070
|
-
|
16071
|
-
|
16072
|
-
|
16073
|
-
|
16074
|
-
|
16075
|
-
|
16076
|
-
|
16077
|
-
|
16078
|
-
|
16079
|
-
|
16080
|
-
|
16081
|
-
|
16082
|
-
|
16083
|
-
|
16084
|
-
|
16085
|
-
|
16146
|
+
- "upload_image_file": 1 💡 上传图片
|
16147
|
+
- "upload_file": 2 💡 上传文件或目录(不包括图片)
|
16148
|
+
- "star_image": 3 💡 给图片设置星标
|
16149
|
+
- "star_file": 4 💡 给文件或目录设置星标(不包括图片)
|
16150
|
+
- "move_image_file": 5 💡 移动图片
|
16151
|
+
- "move_file": 6 💡 移动文件或目录(不包括图片)
|
16152
|
+
- "browse_image": 7 💡 浏览图片
|
16153
|
+
- "browse_video": 8 💡 浏览视频
|
16154
|
+
- "browse_audio": 9 💡 浏览音频
|
16155
|
+
- "browse_document": 10 💡 浏览文档
|
16156
|
+
- "receive_files": 14 💡 接收文件
|
16157
|
+
- "new_folder": 17 💡 新增目录
|
16158
|
+
- "copy_folder": 18 💡 复制目录
|
16159
|
+
- "folder_label": 19 💡 目录设置标签
|
16160
|
+
- "folder_rename": 20 💡 目录改名
|
16161
|
+
- "delete_file": 22 💡 删除文件或目录
|
16162
|
+
- "copy_file": ? 💡 复制文件(未实现)
|
16163
|
+
- "rename_file": ? 💡 文件改名(未实现)
|
16086
16164
|
|
16087
16165
|
- limit: int = 32 💡 最大值为 1_000
|
16088
16166
|
- offset: int = 0
|
@@ -16095,6 +16173,108 @@ class P115Client(P115OpenClient):
|
|
16095
16173
|
payload = {"limit": 32, "offset": 0, **payload}
|
16096
16174
|
return self.request(url=api, params=payload, async_=async_, **request_kwargs)
|
16097
16175
|
|
16176
|
+
@overload
|
16177
|
+
def life_behavior_doc_post_app(
|
16178
|
+
self,
|
16179
|
+
payload: int | str | Iterable[int | str] | dict,
|
16180
|
+
/,
|
16181
|
+
app: str = "android",
|
16182
|
+
base_url: bool | str | Callable[[], str] = False,
|
16183
|
+
*,
|
16184
|
+
async_: Literal[False] = False,
|
16185
|
+
**request_kwargs,
|
16186
|
+
) -> dict:
|
16187
|
+
...
|
16188
|
+
@overload
|
16189
|
+
def life_behavior_doc_post_app(
|
16190
|
+
self,
|
16191
|
+
payload: int | str | Iterable[int | str] | dict,
|
16192
|
+
/,
|
16193
|
+
app: str = "android",
|
16194
|
+
base_url: bool | str | Callable[[], str] = False,
|
16195
|
+
*,
|
16196
|
+
async_: Literal[True],
|
16197
|
+
**request_kwargs,
|
16198
|
+
) -> Coroutine[Any, Any, dict]:
|
16199
|
+
...
|
16200
|
+
def life_behavior_doc_post_app(
|
16201
|
+
self,
|
16202
|
+
payload: int | str | Iterable[int | str] | dict,
|
16203
|
+
/,
|
16204
|
+
app: str = "android",
|
16205
|
+
base_url: bool | str | Callable[[], str] = False,
|
16206
|
+
*,
|
16207
|
+
async_: Literal[False, True] = False,
|
16208
|
+
**request_kwargs,
|
16209
|
+
) -> dict | Coroutine[Any, Any, dict]:
|
16210
|
+
"""推送事件:浏览文档 "browse_document"
|
16211
|
+
|
16212
|
+
POST https://proapi.115.com/android/files/doc_behavior
|
16213
|
+
|
16214
|
+
:payload:
|
16215
|
+
- file_id: int | str
|
16216
|
+
- file_id[0]: int | str
|
16217
|
+
- file_id[1]: int | str
|
16218
|
+
- ...
|
16219
|
+
"""
|
16220
|
+
api = complete_proapi("/files/doc_behavior", base_url, app)
|
16221
|
+
if isinstance(payload, (int, str)):
|
16222
|
+
payload = {"file_id": payload}
|
16223
|
+
elif not isinstance(payload, dict):
|
16224
|
+
payload = {f"file_id[{i}]": fid for i, fid in enumerate(payload)}
|
16225
|
+
return self.request(url=api, method="POST", data=payload, async_=async_, **request_kwargs)
|
16226
|
+
|
16227
|
+
@overload
|
16228
|
+
def life_behavior_img_post_app(
|
16229
|
+
self,
|
16230
|
+
payload: int | str | Iterable[int | str] | dict,
|
16231
|
+
/,
|
16232
|
+
app: str = "android",
|
16233
|
+
base_url: bool | str | Callable[[], str] = False,
|
16234
|
+
*,
|
16235
|
+
async_: Literal[False] = False,
|
16236
|
+
**request_kwargs,
|
16237
|
+
) -> dict:
|
16238
|
+
...
|
16239
|
+
@overload
|
16240
|
+
def life_behavior_img_post_app(
|
16241
|
+
self,
|
16242
|
+
payload: int | str | Iterable[int | str] | dict,
|
16243
|
+
/,
|
16244
|
+
app: str = "android",
|
16245
|
+
base_url: bool | str | Callable[[], str] = False,
|
16246
|
+
*,
|
16247
|
+
async_: Literal[True],
|
16248
|
+
**request_kwargs,
|
16249
|
+
) -> Coroutine[Any, Any, dict]:
|
16250
|
+
...
|
16251
|
+
def life_behavior_img_post_app(
|
16252
|
+
self,
|
16253
|
+
payload: int | str | Iterable[int | str] | dict,
|
16254
|
+
/,
|
16255
|
+
app: str = "android",
|
16256
|
+
base_url: bool | str | Callable[[], str] = False,
|
16257
|
+
*,
|
16258
|
+
async_: Literal[False, True] = False,
|
16259
|
+
**request_kwargs,
|
16260
|
+
) -> dict | Coroutine[Any, Any, dict]:
|
16261
|
+
"""推送事件:浏览图片 "browse_image"
|
16262
|
+
|
16263
|
+
POST https://proapi.115.com/android/files/img_behavior
|
16264
|
+
|
16265
|
+
:payload:
|
16266
|
+
- file_id: int | str
|
16267
|
+
- file_id[0]: int | str
|
16268
|
+
- file_id[1]: int | str
|
16269
|
+
- ...
|
16270
|
+
"""
|
16271
|
+
api = complete_proapi("/files/img_behavior", base_url, app)
|
16272
|
+
if isinstance(payload, (int, str)):
|
16273
|
+
payload = {"file_id": payload}
|
16274
|
+
elif not isinstance(payload, dict):
|
16275
|
+
payload = {f"file_id[{i}]": fid for i, fid in enumerate(payload)}
|
16276
|
+
return self.request(url=api, method="POST", data=payload, async_=async_, **request_kwargs)
|
16277
|
+
|
16098
16278
|
@overload
|
16099
16279
|
def life_calendar_getoption(
|
16100
16280
|
self,
|
@@ -16328,60 +16508,6 @@ class P115Client(P115OpenClient):
|
|
16328
16508
|
payload = {"start_time": payload}
|
16329
16509
|
return self.request(url=api, params=payload, async_=async_, **request_kwargs)
|
16330
16510
|
|
16331
|
-
@overload
|
16332
|
-
def life_img_behavior_post_app(
|
16333
|
-
self,
|
16334
|
-
payload: int | str | Iterable[int | str] | dict,
|
16335
|
-
/,
|
16336
|
-
app: str = "android",
|
16337
|
-
base_url: bool | str | Callable[[], str] = False,
|
16338
|
-
*,
|
16339
|
-
async_: Literal[False] = False,
|
16340
|
-
**request_kwargs,
|
16341
|
-
) -> dict:
|
16342
|
-
...
|
16343
|
-
@overload
|
16344
|
-
def life_img_behavior_post_app(
|
16345
|
-
self,
|
16346
|
-
payload: int | str | Iterable[int | str] | dict,
|
16347
|
-
/,
|
16348
|
-
app: str = "android",
|
16349
|
-
base_url: bool | str | Callable[[], str] = False,
|
16350
|
-
*,
|
16351
|
-
async_: Literal[True],
|
16352
|
-
**request_kwargs,
|
16353
|
-
) -> Coroutine[Any, Any, dict]:
|
16354
|
-
...
|
16355
|
-
def life_img_behavior_post_app(
|
16356
|
-
self,
|
16357
|
-
payload: int | str | Iterable[int | str] | dict,
|
16358
|
-
/,
|
16359
|
-
app: str = "android",
|
16360
|
-
base_url: bool | str | Callable[[], str] = False,
|
16361
|
-
*,
|
16362
|
-
async_: Literal[False, True] = False,
|
16363
|
-
**request_kwargs,
|
16364
|
-
) -> dict | Coroutine[Any, Any, dict]:
|
16365
|
-
"""推送事件:浏览图片 "browse_image"
|
16366
|
-
|
16367
|
-
POST https://proapi.115.com/android/files/img_behavior
|
16368
|
-
|
16369
|
-
.. note::
|
16370
|
-
如果提供的是目录的 id,则会把其中(直属的)图片记为浏览
|
16371
|
-
|
16372
|
-
:payload:
|
16373
|
-
- file_id: int | str
|
16374
|
-
- file_id[0]: int | str
|
16375
|
-
- file_id[1]: int | str
|
16376
|
-
- ...
|
16377
|
-
"""
|
16378
|
-
api = complete_proapi("/files/img_behavior", base_url, app)
|
16379
|
-
if isinstance(payload, (int, str)):
|
16380
|
-
payload = {"file_id": payload}
|
16381
|
-
elif not isinstance(payload, dict):
|
16382
|
-
payload = {f"file_id[{i}]": fid for i, fid in enumerate(payload)}
|
16383
|
-
return self.request(url=api, method="POST", data=payload, async_=async_, **request_kwargs)
|
16384
|
-
|
16385
16511
|
@overload
|
16386
16512
|
def life_list(
|
16387
16513
|
self,
|
@@ -18436,12 +18562,12 @@ class P115Client(P115OpenClient):
|
|
18436
18562
|
:payload:
|
18437
18563
|
- flag: int = 0 💡 标识,用于对应某种情况
|
18438
18564
|
|
18439
|
-
|
18440
|
-
|
18441
|
-
|
18442
|
-
|
18443
|
-
|
18444
|
-
|
18565
|
+
- 0: 已完成
|
18566
|
+
- 1: 全部
|
18567
|
+
- 2: 已失败
|
18568
|
+
- 3: 进行中
|
18569
|
+
- 4: 已完成+删除源文件
|
18570
|
+
- 5: 全部+删除源文件
|
18445
18571
|
"""
|
18446
18572
|
if isinstance(payload, int):
|
18447
18573
|
payload = {"flag": payload}
|
@@ -20104,12 +20230,12 @@ class P115Client(P115OpenClient):
|
|
20104
20230
|
- is_asc: 0 | 1 = 1 💡 是否升序排列
|
20105
20231
|
- order: str = "file_name" 💡 用某字段排序
|
20106
20232
|
|
20107
|
-
|
20108
|
-
|
20109
|
-
|
20110
|
-
|
20111
|
-
|
20112
|
-
|
20233
|
+
- "file_name": 文件名
|
20234
|
+
- "file_size": 文件大小
|
20235
|
+
- "file_type": 文件种类
|
20236
|
+
- "user_utime": 修改时间
|
20237
|
+
- "user_ptime": 创建时间
|
20238
|
+
- "user_otime": 上一次打开时间
|
20113
20239
|
|
20114
20240
|
- ignore_warn: 0 | 1 = 1 💡 忽略信息提示,传 1 就行了
|
20115
20241
|
"""
|
@@ -20163,12 +20289,12 @@ class P115Client(P115OpenClient):
|
|
20163
20289
|
- is_asc: 0 | 1 = 1 💡 是否升序排列
|
20164
20290
|
- order: str = "file_name" 💡 用某字段排序
|
20165
20291
|
|
20166
|
-
|
20167
|
-
|
20168
|
-
|
20169
|
-
|
20170
|
-
|
20171
|
-
|
20292
|
+
- "file_name": 文件名
|
20293
|
+
- "file_size": 文件大小
|
20294
|
+
- "file_type": 文件种类
|
20295
|
+
- "user_utime": 修改时间
|
20296
|
+
- "user_ptime": 创建时间
|
20297
|
+
- "user_otime": 上一次打开时间
|
20172
20298
|
|
20173
20299
|
- ignore_warn: 0 | 1 = 1 💡 忽略信息提示,传 1 就行了
|
20174
20300
|
"""
|
@@ -20227,15 +20353,15 @@ class P115Client(P115OpenClient):
|
|
20227
20353
|
- suffix: str = <default> 💡 文件后缀(扩展名),优先级高于 `type`
|
20228
20354
|
- type: int = <default> 💡 文件类型
|
20229
20355
|
|
20230
|
-
|
20231
|
-
|
20232
|
-
|
20233
|
-
|
20234
|
-
|
20235
|
-
|
20236
|
-
|
20237
|
-
|
20238
|
-
|
20356
|
+
- 0: 全部
|
20357
|
+
- 1: 文档
|
20358
|
+
- 2: 图片
|
20359
|
+
- 3: 音频
|
20360
|
+
- 4: 视频
|
20361
|
+
- 5: 压缩包
|
20362
|
+
- 6: 软件/应用
|
20363
|
+
- 7: 书籍
|
20364
|
+
- 99: 所有文件
|
20239
20365
|
"""
|
20240
20366
|
api = complete_webapi("/share/search", base_url=base_url)
|
20241
20367
|
payload = {"cid": 0, "limit": 32, "offset": 0, "search_value": ".", **payload}
|
@@ -20712,9 +20838,9 @@ class P115Client(P115OpenClient):
|
|
20712
20838
|
- asc: 0 | 1 = <default> 💡 是否升序排列
|
20713
20839
|
- o: str = <default> 💡 用某字段排序
|
20714
20840
|
|
20715
|
-
|
20716
|
-
|
20717
|
-
|
20841
|
+
- "file_name": 文件名
|
20842
|
+
- "file_size": 文件大小
|
20843
|
+
- "user_ptime": 创建时间/修改时间
|
20718
20844
|
"""
|
20719
20845
|
api = complete_webapi("/share/snap", base_url=base_url)
|
20720
20846
|
if isinstance(self, dict):
|
@@ -20787,9 +20913,9 @@ class P115Client(P115OpenClient):
|
|
20787
20913
|
- asc: 0 | 1 = <default> 💡 是否升序排列
|
20788
20914
|
- o: str = <default> 💡 用某字段排序
|
20789
20915
|
|
20790
|
-
|
20791
|
-
|
20792
|
-
|
20916
|
+
- "file_name": 文件名
|
20917
|
+
- "file_size": 文件大小
|
20918
|
+
- "user_ptime": 创建时间/修改时间
|
20793
20919
|
"""
|
20794
20920
|
api = complete_proapi("/2.0/share/snap", base_url, app)
|
20795
20921
|
if isinstance(self, dict):
|
@@ -21030,15 +21156,15 @@ class P115Client(P115OpenClient):
|
|
21030
21156
|
:payload:
|
21031
21157
|
- filter_field: "parents" | "file_name" | "" | "" = <default> 💡 保留条件(1. 用于批量删除)
|
21032
21158
|
|
21033
|
-
|
21034
|
-
|
21035
|
-
|
21036
|
-
|
21159
|
+
- "file_name": 文件名(按长度)
|
21160
|
+
- "parents": 所在目录路径(按长度)
|
21161
|
+
- "user_utime": 操作时间
|
21162
|
+
- "user_ptime": 创建时间
|
21037
21163
|
|
21038
21164
|
- filter_order: "asc" | "desc" = <default> 💡 排序(2. 用于批量删除)
|
21039
21165
|
|
21040
|
-
|
21041
|
-
|
21166
|
+
- "asc": 升序,从小到大,取最小
|
21167
|
+
- "desc": 降序,从大到小,取最大
|
21042
21168
|
|
21043
21169
|
- batch: 0 | 1 = <default> 💡 是否批量操作(3. 用于批量删除)
|
21044
21170
|
- sha1s[{sha1}]: int | str = <default> 💡 文件 id,多个用逗号 "," 隔开(1. 用于手动指定删除对象)
|