kmoe-manga-downloader 1.2.7__tar.gz → 1.2.8a0__tar.gz

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.
Files changed (64) hide show
  1. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/PKG-INFO +1 -1
  2. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/_version.py +3 -3
  3. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/core/utils.py +16 -2
  4. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/downloader/download_utils.py +4 -1
  5. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmoe_manga_downloader.egg-info/PKG-INFO +1 -1
  6. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/.github/ISSUE_TEMPLATE/bug_report.yml +0 -0
  7. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/.github/ISSUE_TEMPLATE/feature_request.yml +0 -0
  8. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/.github/workflows/release-package.yml +0 -0
  9. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/.github/workflows/unit-test.yml +0 -0
  10. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/.gitignore +0 -0
  11. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/LICENSE +0 -0
  12. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/README.md +0 -0
  13. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/assets/kmdr-demo.gif +0 -0
  14. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/assets/kmdr-log-demo.gif +0 -0
  15. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/mirror/mirrors.json +0 -0
  16. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/pyproject.toml +0 -0
  17. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/setup.cfg +0 -0
  18. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/__init__.py +0 -0
  19. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/core/__init__.py +0 -0
  20. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/core/bases.py +0 -0
  21. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/core/console.py +0 -0
  22. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/core/constants.py +0 -0
  23. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/core/context.py +0 -0
  24. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/core/defaults.py +0 -0
  25. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/core/error.py +0 -0
  26. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/core/protocol.py +0 -0
  27. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/core/registry.py +0 -0
  28. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/core/session.py +0 -0
  29. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/core/structure.py +0 -0
  30. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/main.py +0 -0
  31. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/__init__.py +0 -0
  32. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/authenticator/CookieAuthenticator.py +0 -0
  33. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/authenticator/LoginAuthenticator.py +0 -0
  34. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/authenticator/__init__.py +0 -0
  35. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/authenticator/utils.py +0 -0
  36. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/configurer/BaseUrlUpdator.py +0 -0
  37. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/configurer/ConfigClearer.py +0 -0
  38. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/configurer/ConfigUnsetter.py +0 -0
  39. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/configurer/OptionLister.py +0 -0
  40. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/configurer/OptionSetter.py +0 -0
  41. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/configurer/__init__.py +0 -0
  42. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/configurer/option_validate.py +0 -0
  43. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/downloader/DirectDownloader.py +0 -0
  44. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/downloader/ReferViaDownloader.py +0 -0
  45. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/downloader/__init__.py +0 -0
  46. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/downloader/misc.py +0 -0
  47. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/lister/BookUrlLister.py +0 -0
  48. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/lister/FollowedBookLister.py +0 -0
  49. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/lister/__init__.py +0 -0
  50. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/lister/utils.py +0 -0
  51. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/picker/ArgsFilterPicker.py +0 -0
  52. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/picker/DefaultVolPicker.py +0 -0
  53. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/picker/__init__.py +0 -0
  54. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmdr/module/picker/utils.py +0 -0
  55. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmoe_manga_downloader.egg-info/SOURCES.txt +0 -0
  56. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmoe_manga_downloader.egg-info/dependency_links.txt +0 -0
  57. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmoe_manga_downloader.egg-info/entry_points.txt +0 -0
  58. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmoe_manga_downloader.egg-info/requires.txt +0 -0
  59. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/src/kmoe_manga_downloader.egg-info/top_level.txt +0 -0
  60. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/tests/__init__.py +0 -0
  61. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/tests/test_async_retry_decorator.py +0 -0
  62. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/tests/test_kmdr_config_option.py +0 -0
  63. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/tests/test_kmdr_download.py +0 -0
  64. {kmoe_manga_downloader-1.2.7 → kmoe_manga_downloader-1.2.8a0}/tests/test_utils_resolve_volme.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: kmoe-manga-downloader
3
- Version: 1.2.7
3
+ Version: 1.2.8a0
4
4
  Summary: A CLI-downloader for site @kox.moe.
5
5
  Author-email: Chris Zheng <chrisis58@outlook.com>
6
6
  License: MIT License
@@ -28,7 +28,7 @@ version_tuple: VERSION_TUPLE
28
28
  commit_id: COMMIT_ID
29
29
  __commit_id__: COMMIT_ID
30
30
 
31
- __version__ = version = '1.2.7'
32
- __version_tuple__ = version_tuple = (1, 2, 7)
31
+ __version__ = version = '1.2.8a0'
32
+ __version_tuple__ = version_tuple = (1, 2, 8, 'a0')
33
33
 
34
- __commit_id__ = commit_id = 'g097a6376f'
34
+ __commit_id__ = commit_id = 'g32d79b016'
@@ -1,5 +1,5 @@
1
1
  import functools
2
- from typing import Optional, Callable, TypeVar, Hashable, Generic
2
+ from typing import Optional, Callable, TypeVar, Hashable, Generic, Mapping, Any
3
3
  import asyncio
4
4
  from asyncio.proactor_events import _ProactorBasePipeTransport
5
5
 
@@ -146,4 +146,18 @@ def _silence_event_loop_closed(func):
146
146
 
147
147
  return wrapper
148
148
 
149
- _ProactorBasePipeTransport.__del__ = _silence_event_loop_closed(_ProactorBasePipeTransport.__del__)
149
+ _ProactorBasePipeTransport.__del__ = _silence_event_loop_closed(_ProactorBasePipeTransport.__del__)
150
+
151
+
152
+
153
+ SENSITIVE_KEYS = {'cookie', 'authorization', 'proxy-authorization', 'set-cookie'}
154
+ """定义需要脱敏的字段(全部小写以便不区分大小写匹配)"""
155
+
156
+ def sanitize_headers(headers: Mapping[str, Any]) -> dict:
157
+ """
158
+ 清洗 HTTP 头信息,隐藏敏感字段(如 Cookie, Authorization)。
159
+ """
160
+ return {
161
+ k: '******' if k.lower() in SENSITIVE_KEYS else v
162
+ for k, v in headers.items()
163
+ }
@@ -15,7 +15,7 @@ from aiohttp.client_exceptions import ClientPayloadError
15
15
 
16
16
  from kmdr.core.console import info, log, debug
17
17
  from kmdr.core.error import ResponseError
18
- from kmdr.core.utils import async_retry
18
+ from kmdr.core.utils import async_retry, sanitize_headers
19
19
 
20
20
  from .misc import STATUS, StateManager
21
21
 
@@ -319,6 +319,9 @@ async def _download_part(
319
319
  debug("开始下载分片:", os.path.basename(part_path), "范围:", current_start, "-", end)
320
320
  async with session.get(url, headers=local_headers) as response:
321
321
  response.raise_for_status()
322
+ debug("分片", os.path.basename(part_path), "状态码:", response.status)
323
+ debug("分片", os.path.basename(part_path), "请求头:", sanitize_headers(response.request_info.headers))
324
+ debug("分片", os.path.basename(part_path), "响应头:", sanitize_headers(response.headers))
322
325
 
323
326
  await state_manager.request_status_update(part_id=start, status=STATUS.DOWNLOADING)
324
327
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: kmoe-manga-downloader
3
- Version: 1.2.7
3
+ Version: 1.2.8a0
4
4
  Summary: A CLI-downloader for site @kox.moe.
5
5
  Author-email: Chris Zheng <chrisis58@outlook.com>
6
6
  License: MIT License