Unit3Dup 0.9.6__tar.gz → 0.9.8__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.
- {unit3dup-0.9.6 → unit3dup-0.9.8}/PKG-INFO +1 -1
- {unit3dup-0.9.6 → unit3dup-0.9.8}/Unit3Dup.egg-info/PKG-INFO +1 -1
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/p2p_tags.py +21 -12
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/settings.py +1 -1
- {unit3dup-0.9.6 → unit3dup-0.9.8}/pyproject.toml +1 -1
- {unit3dup-0.9.6 → unit3dup-0.9.8}/LICENSE +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/README.rst +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/Unit3Dup.egg-info/SOURCES.txt +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/Unit3Dup.egg-info/dependency_links.txt +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/Unit3Dup.egg-info/entry_points.txt +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/Unit3Dup.egg-info/requires.txt +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/Unit3Dup.egg-info/top_level.txt +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/bdinfo_string.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/bittorrent.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/command.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/constants.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/database.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/ftpx/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/ftpx/client.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/ftpx/core/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/ftpx/core/ftpx_service.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/ftpx/core/ftpx_session.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/ftpx/core/menu.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/ftpx/core/models/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/ftpx/core/models/list.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/igdb/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/igdb/client.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/igdb/core/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/igdb/core/api.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/igdb/core/models/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/igdb/core/models/search.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/igdb/core/platformid.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/igdb/core/tags.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/imageHost.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/mediaresult.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/sessions/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/sessions/agents.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/sessions/exceptions.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/sessions/session.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/api.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/keywords.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/movie/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/movie/alternative_titles.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/movie/details.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/movie/movie.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/movie/nowplaying.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/movie/release_info.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/tvshow/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/tvshow/alternative.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/tvshow/details.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/tvshow/on_the_air.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/tvshow/translations.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/tvshow/tvshow.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/videos.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/trailers/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/trailers/api.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/trailers/response.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/tvdb.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/extractor.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/frames.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/mediainfo.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/mediainfo_string.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/title.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/torrent_clients.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/trackers/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/trackers/data.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/trackers/itt.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/trackers/sis.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/trackers/trackers.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/common/utility.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/requirements.txt +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/setup.cfg +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/__main__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/automode.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/bot.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/duplicate.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/exceptions.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/media.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/media_manager/ContentManager.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/media_manager/DocuManager.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/media_manager/GameManager.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/media_manager/MediaInfoManager.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/media_manager/SeedManager.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/media_manager/TorrentManager.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/media_manager/VideoManager.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/media_manager/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/media_manager/common.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/pvtDocu.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/pvtTorrent.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/pvtTracker.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/pvtVideo.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/torrent.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/unit3dup/upload.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/view/__init__.py +0 -0
- {unit3dup-0.9.6 → unit3dup-0.9.8}/view/custom_console.py +0 -0
|
@@ -59,6 +59,10 @@ TAG_TYPES = {
|
|
|
59
59
|
"FRA": "flag",
|
|
60
60
|
"GER": "flag",
|
|
61
61
|
"ESP": "flag",
|
|
62
|
+
"JPN": "flag",
|
|
63
|
+
"JAP": "flag",
|
|
64
|
+
"POR": "flag",
|
|
65
|
+
"PRT": "flag",
|
|
62
66
|
|
|
63
67
|
"ATMOS": "audio",
|
|
64
68
|
"TRUEHD": "audio",
|
|
@@ -116,6 +120,11 @@ TAG_TYPES = {
|
|
|
116
120
|
"HDR": "video",
|
|
117
121
|
"HDR10+": "video",
|
|
118
122
|
"FHDRIP": "video",
|
|
123
|
+
"UHDRIP": "video",
|
|
124
|
+
"FULL HD": "video",
|
|
125
|
+
"FULLHD": "video",
|
|
126
|
+
"HD": "video",
|
|
127
|
+
"UHD 4K": "video",
|
|
119
128
|
|
|
120
129
|
"4320P": "resolution",
|
|
121
130
|
"2160P": "resolution",
|
|
@@ -150,7 +159,6 @@ class P2pTags:
|
|
|
150
159
|
|
|
151
160
|
# Search for tags in the title
|
|
152
161
|
tags_match = pattern.findall(filename.upper())
|
|
153
|
-
|
|
154
162
|
# remove dope
|
|
155
163
|
tags_match = list(dict.fromkeys(tags_match))
|
|
156
164
|
|
|
@@ -178,9 +186,12 @@ class P2pTags:
|
|
|
178
186
|
audio_format = self.mediafile.audio_track[0].get('format', "") if self.mediafile.audio_track else ""
|
|
179
187
|
tags_match.append(audio_format)
|
|
180
188
|
|
|
181
|
-
# Add
|
|
182
|
-
|
|
183
|
-
|
|
189
|
+
# Add tag language if there is no tag
|
|
190
|
+
flags = self._audio_lang()
|
|
191
|
+
# are all the language tags from mediaInfo available in the title?
|
|
192
|
+
if len(flags) != tags_match.count('flag'):
|
|
193
|
+
missing_flags = [tag for tag in flags if tag not in tags_match]
|
|
194
|
+
tags_match.extend(missing_flags)
|
|
184
195
|
|
|
185
196
|
# Add subtitle tag if subtitle_track exist and there is no 'sub' in the title
|
|
186
197
|
if 'subtitle' not in categories:
|
|
@@ -254,15 +265,9 @@ class P2pTags:
|
|
|
254
265
|
if not any(TAG_TYPES.get(tag.upper()) == "resolution" for tag in tags_match):
|
|
255
266
|
tags_match.append(self.mediafile_resolution)
|
|
256
267
|
|
|
257
|
-
# Assign an index to the 'precedence' keywords
|
|
258
|
-
# precedence_index = {}
|
|
259
|
-
# for i, v in enumerate(self.tags_position):
|
|
260
|
-
# precedence_index[v] = i
|
|
261
|
-
|
|
262
268
|
# /// Sort tags based on 2 rules:
|
|
263
269
|
# 1) Order by tag_positions
|
|
264
270
|
# 2) For audio and flag categories alternate them (audio/flag/audio/flag)
|
|
265
|
-
|
|
266
271
|
# We can't sort each tags so we create dedicated list
|
|
267
272
|
audio_q = deque()
|
|
268
273
|
flag_q = deque()
|
|
@@ -329,8 +334,12 @@ class P2pTags:
|
|
|
329
334
|
for t in l:
|
|
330
335
|
c = ManageTitles.convert_iso(t)
|
|
331
336
|
if c:
|
|
332
|
-
|
|
333
|
-
|
|
337
|
+
if isinstance(c,list):
|
|
338
|
+
lang.extend(c)
|
|
339
|
+
break
|
|
340
|
+
else:
|
|
341
|
+
lang.append(c)
|
|
342
|
+
break
|
|
334
343
|
return lang
|
|
335
344
|
|
|
336
345
|
def process(self) -> str:
|
|
@@ -15,7 +15,7 @@ from common.utility import ManageTitles
|
|
|
15
15
|
from common import trackers
|
|
16
16
|
|
|
17
17
|
config_file = "Unit3Dbot.json"
|
|
18
|
-
version = "0.9.
|
|
18
|
+
version = "0.9.8"
|
|
19
19
|
|
|
20
20
|
if os.name == "nt":
|
|
21
21
|
WATCHER_DESTINATION_PATH: Path = Path(os.getenv("LOCALAPPDATA", ".")) / "Unit3Dup_config" / "watcher_destination_path"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/__init__.py
RENAMED
|
File without changes
|
{unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/movie/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/movie/details.py
RENAMED
|
File without changes
|
{unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/movie/movie.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/tvshow/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
{unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/tvshow/details.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unit3dup-0.9.6 → unit3dup-0.9.8}/common/external_services/theMovieDB/core/models/tvshow/tvshow.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|