sticker-convert 2.10.9__py3-none-any.whl → 2.11.1__py3-none-any.whl
Sign up to get free protection for your applications and to get access to all the features.
- sticker_convert/cli.py +46 -8
- sticker_convert/converter.py +13 -11
- sticker_convert/downloaders/download_base.py +5 -5
- sticker_convert/downloaders/download_signal.py +4 -2
- sticker_convert/downloaders/download_telegram.py +19 -103
- sticker_convert/gui.py +12 -0
- sticker_convert/gui_components/frames/cred_frame.py +38 -13
- sticker_convert/job.py +8 -8
- sticker_convert/job_option.py +6 -0
- sticker_convert/resources/compression.json +2 -2
- sticker_convert/resources/help.json +3 -2
- sticker_convert/resources/input.json +10 -0
- sticker_convert/resources/output.json +16 -0
- sticker_convert/uploaders/compress_wastickers.py +76 -56
- sticker_convert/uploaders/upload_telegram.py +170 -234
- sticker_convert/uploaders/upload_viber.py +18 -19
- sticker_convert/utils/auth/telegram_api.py +670 -0
- sticker_convert/utils/auth/telethon_setup.py +79 -0
- sticker_convert/utils/files/metadata_handler.py +3 -3
- sticker_convert/utils/url_detect.py +1 -1
- sticker_convert/version.py +1 -1
- {sticker_convert-2.10.9.dist-info → sticker_convert-2.11.1.dist-info}/METADATA +53 -35
- {sticker_convert-2.10.9.dist-info → sticker_convert-2.11.1.dist-info}/RECORD +27 -25
- {sticker_convert-2.10.9.dist-info → sticker_convert-2.11.1.dist-info}/WHEEL +1 -1
- {sticker_convert-2.10.9.dist-info → sticker_convert-2.11.1.dist-info}/LICENSE +0 -0
- {sticker_convert-2.10.9.dist-info → sticker_convert-2.11.1.dist-info}/entry_points.txt +0 -0
- {sticker_convert-2.10.9.dist-info → sticker_convert-2.11.1.dist-info}/top_level.txt +0 -0
@@ -1,7 +1,6 @@
|
|
1
1
|
#!/usr/bin/env python3
|
2
2
|
import copy
|
3
3
|
import json
|
4
|
-
import shutil
|
5
4
|
import zipfile
|
6
5
|
from pathlib import Path
|
7
6
|
from typing import Any, Dict, List, Tuple
|
@@ -12,7 +11,6 @@ from sticker_convert.converter import StickerConvert
|
|
12
11
|
from sticker_convert.job_option import CompOption, CredOption, OutputOption
|
13
12
|
from sticker_convert.uploaders.upload_base import UploadBase
|
14
13
|
from sticker_convert.utils.callback import CallbackProtocol, CallbackReturn
|
15
|
-
from sticker_convert.utils.files.cache_store import CacheStore
|
16
14
|
from sticker_convert.utils.files.metadata_handler import MetadataHandler
|
17
15
|
from sticker_convert.utils.files.sanitize_filename import sanitize_filename
|
18
16
|
from sticker_convert.utils.media.format_verify import FormatVerify
|
@@ -96,31 +94,32 @@ class UploadViber(UploadBase):
|
|
96
94
|
stickers_ok = 0
|
97
95
|
for pack_title, stickers in packs.items():
|
98
96
|
stickers_total += len(stickers)
|
99
|
-
|
97
|
+
out_f = Path(
|
98
|
+
self.opt_output.dir, sanitize_filename(pack_title + ".zip")
|
99
|
+
).as_posix()
|
100
|
+
with zipfile.ZipFile(out_f, "w", zipfile.ZIP_DEFLATED) as zipf:
|
100
101
|
for num, src in enumerate(stickers):
|
101
102
|
self.cb.put(f"Verifying {src} for uploading to Viber")
|
102
103
|
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
else:
|
108
|
-
StickerConvert.convert(
|
109
|
-
Path(src),
|
110
|
-
Path(dst),
|
104
|
+
if not FormatVerify.check_file(src, spec=self.png_spec):
|
105
|
+
success, _, image_data, _ = StickerConvert.convert(
|
106
|
+
src,
|
107
|
+
Path("bytes.png"),
|
111
108
|
self.opt_comp_merged,
|
112
109
|
self.cb,
|
113
110
|
self.cb_return,
|
114
111
|
)
|
112
|
+
assert isinstance(image_data, bytes)
|
113
|
+
if not success:
|
114
|
+
self.cb.put(
|
115
|
+
f"Warning: Cannot compress file {src.name}, skip this file..."
|
116
|
+
)
|
117
|
+
continue
|
118
|
+
else:
|
119
|
+
with open(src, "rb") as f:
|
120
|
+
image_data = f.read()
|
115
121
|
|
116
|
-
|
117
|
-
self.opt_output.dir, sanitize_filename(pack_title + ".zip")
|
118
|
-
).as_posix()
|
119
|
-
|
120
|
-
with zipfile.ZipFile(out_f, "w", zipfile.ZIP_DEFLATED) as zipf:
|
121
|
-
for file in Path(tempdir).iterdir():
|
122
|
-
file_path = Path(tempdir, file.name)
|
123
|
-
zipf.write(file_path, arcname=file_path.name)
|
122
|
+
zipf.writestr(f"{str(num).zfill(2)}.png", image_data)
|
124
123
|
|
125
124
|
upload_data = copy.deepcopy(upload_data_base)
|
126
125
|
upload_data["title"] = pack_title
|