Unit3Dup 0.9.29__tar.gz → 0.10.1__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.29 → unit3dup-0.10.1}/PKG-INFO +2 -12
- {unit3dup-0.9.29 → unit3dup-0.10.1}/README.rst +1 -11
- {unit3dup-0.9.29 → unit3dup-0.10.1}/Unit3Dup.egg-info/PKG-INFO +2 -12
- {unit3dup-0.9.29 → unit3dup-0.10.1}/Unit3Dup.egg-info/SOURCES.txt +1 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/mediainfo.py +1 -1
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/settings.py +12 -6
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/trackers/__init__.py +2 -1
- unit3dup-0.10.1/common/trackers/ban_list.py +6 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/trackers/data.py +9 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/trackers/itt.py +1 -0
- unit3dup-0.10.1/common/trackers/ptt.py +142 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/trackers/signs_list.py +2 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/utility.py +7 -7
- {unit3dup-0.9.29 → unit3dup-0.10.1}/pyproject.toml +1 -1
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/__main__.py +22 -26
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/media.py +9 -6
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/pvtTracker.py +5 -0
- unit3dup-0.9.29/common/trackers/ban_list.py +0 -5
- {unit3dup-0.9.29 → unit3dup-0.10.1}/LICENSE +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/Unit3Dup.egg-info/dependency_links.txt +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/Unit3Dup.egg-info/entry_points.txt +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/Unit3Dup.egg-info/requires.txt +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/Unit3Dup.egg-info/top_level.txt +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/bdinfo_string.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/bittorrent.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/command.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/constants.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/database.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/ftpx/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/ftpx/client.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/ftpx/core/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/ftpx/core/ftpx_service.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/ftpx/core/ftpx_session.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/ftpx/core/menu.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/ftpx/core/models/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/ftpx/core/models/list.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/igdb/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/igdb/client.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/igdb/core/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/igdb/core/api.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/igdb/core/models/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/igdb/core/models/search.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/igdb/core/platformid.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/igdb/core/tags.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/imageHost.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/mediaresult.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/sessions/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/sessions/agents.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/sessions/exceptions.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/sessions/session.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/api.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/keywords.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/movie/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/movie/alternative_titles.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/movie/details.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/movie/movie.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/movie/nowplaying.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/movie/release_info.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/tvshow/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/tvshow/alternative.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/tvshow/details.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/tvshow/on_the_air.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/tvshow/translations.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/tvshow/tvshow.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/videos.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/trailers/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/trailers/api.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/trailers/response.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/tvdb.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/extractor.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/frames.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/mediainfo_string.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/tags.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/title.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/torrent_clients.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/trackers/sis.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/trackers/tags_list.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/common/trackers/trackers.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/requirements.txt +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/setup.cfg +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/automode.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/bot.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/duplicate.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/exceptions.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/media_manager/ContentManager.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/media_manager/DocuManager.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/media_manager/GameManager.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/media_manager/MediaInfoManager.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/media_manager/SeedManager.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/media_manager/TorrentManager.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/media_manager/VideoManager.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/media_manager/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/media_manager/common.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/pvtDocu.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/pvtTorrent.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/pvtVideo.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/torrent.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/unit3dup/upload.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/view/__init__.py +0 -0
- {unit3dup-0.9.29 → unit3dup-0.10.1}/view/custom_console.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: Unit3Dup
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.10.1
|
|
4
4
|
Summary: An uploader for the Unit3D torrent tracker
|
|
5
5
|
Author: Parzival
|
|
6
6
|
License-Expression: MIT
|
|
@@ -147,17 +147,11 @@ united by a shared passion for torrents and more
|
|
|
147
147
|
| ``ITT`` | https://itatorrents.xyz/ |
|
|
148
148
|
+------------------+----------------------------+
|
|
149
149
|
|
|
150
|
-
|
|
151
|
-
.. image:: https://img.shields.io/badge/Telegram-Join-blue?logo=telegram
|
|
152
|
-
:target: https://t.me/+hj294GabGWJlMDI8
|
|
153
|
-
:alt: Unisciti su Telegram
|
|
154
|
-
|
|
155
150
|
.. image:: https://img.shields.io/discord/1214696147600408698?label=Discord&logo=discord&style=flat
|
|
156
|
-
:target: https://discord.gg/
|
|
151
|
+
:target: https://discord.gg/8RpwN2Khcz
|
|
157
152
|
:alt: Discord Server
|
|
158
153
|
|
|
159
154
|
|
|
160
|
-
|
|
161
155
|
# AstraeLabs
|
|
162
156
|
======================
|
|
163
157
|
|
|
@@ -166,10 +160,6 @@ united by a shared passion for torrents and more
|
|
|
166
160
|
An open-source script for downloading movies, TV shows, and anime from various websites,
|
|
167
161
|
built by a community of people with a shared interest in programming.
|
|
168
162
|
|
|
169
|
-
.. image:: https://img.shields.io/badge/Telegram-Join-blue?logo=telegram
|
|
170
|
-
:target: https://t.me/+hj294GabGWJlMDI8
|
|
171
|
-
:alt: Unisciti su Telegram
|
|
172
|
-
|
|
173
163
|
.. image:: https://img.shields.io/badge/AstraeLabs-blue.svg
|
|
174
164
|
:target: https://github.com/AstraeLabs/VibraVid
|
|
175
165
|
:alt: AstraeLabs Badge
|
|
@@ -116,17 +116,11 @@ united by a shared passion for torrents and more
|
|
|
116
116
|
| ``ITT`` | https://itatorrents.xyz/ |
|
|
117
117
|
+------------------+----------------------------+
|
|
118
118
|
|
|
119
|
-
|
|
120
|
-
.. image:: https://img.shields.io/badge/Telegram-Join-blue?logo=telegram
|
|
121
|
-
:target: https://t.me/+hj294GabGWJlMDI8
|
|
122
|
-
:alt: Unisciti su Telegram
|
|
123
|
-
|
|
124
119
|
.. image:: https://img.shields.io/discord/1214696147600408698?label=Discord&logo=discord&style=flat
|
|
125
|
-
:target: https://discord.gg/
|
|
120
|
+
:target: https://discord.gg/8RpwN2Khcz
|
|
126
121
|
:alt: Discord Server
|
|
127
122
|
|
|
128
123
|
|
|
129
|
-
|
|
130
124
|
# AstraeLabs
|
|
131
125
|
======================
|
|
132
126
|
|
|
@@ -135,10 +129,6 @@ united by a shared passion for torrents and more
|
|
|
135
129
|
An open-source script for downloading movies, TV shows, and anime from various websites,
|
|
136
130
|
built by a community of people with a shared interest in programming.
|
|
137
131
|
|
|
138
|
-
.. image:: https://img.shields.io/badge/Telegram-Join-blue?logo=telegram
|
|
139
|
-
:target: https://t.me/+hj294GabGWJlMDI8
|
|
140
|
-
:alt: Unisciti su Telegram
|
|
141
|
-
|
|
142
132
|
.. image:: https://img.shields.io/badge/AstraeLabs-blue.svg
|
|
143
133
|
:target: https://github.com/AstraeLabs/VibraVid
|
|
144
134
|
:alt: AstraeLabs Badge
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: Unit3Dup
|
|
3
|
-
Version: 0.
|
|
3
|
+
Version: 0.10.1
|
|
4
4
|
Summary: An uploader for the Unit3D torrent tracker
|
|
5
5
|
Author: Parzival
|
|
6
6
|
License-Expression: MIT
|
|
@@ -147,17 +147,11 @@ united by a shared passion for torrents and more
|
|
|
147
147
|
| ``ITT`` | https://itatorrents.xyz/ |
|
|
148
148
|
+------------------+----------------------------+
|
|
149
149
|
|
|
150
|
-
|
|
151
|
-
.. image:: https://img.shields.io/badge/Telegram-Join-blue?logo=telegram
|
|
152
|
-
:target: https://t.me/+hj294GabGWJlMDI8
|
|
153
|
-
:alt: Unisciti su Telegram
|
|
154
|
-
|
|
155
150
|
.. image:: https://img.shields.io/discord/1214696147600408698?label=Discord&logo=discord&style=flat
|
|
156
|
-
:target: https://discord.gg/
|
|
151
|
+
:target: https://discord.gg/8RpwN2Khcz
|
|
157
152
|
:alt: Discord Server
|
|
158
153
|
|
|
159
154
|
|
|
160
|
-
|
|
161
155
|
# AstraeLabs
|
|
162
156
|
======================
|
|
163
157
|
|
|
@@ -166,10 +160,6 @@ united by a shared passion for torrents and more
|
|
|
166
160
|
An open-source script for downloading movies, TV shows, and anime from various websites,
|
|
167
161
|
built by a community of people with a shared interest in programming.
|
|
168
162
|
|
|
169
|
-
.. image:: https://img.shields.io/badge/Telegram-Join-blue?logo=telegram
|
|
170
|
-
:target: https://t.me/+hj294GabGWJlMDI8
|
|
171
|
-
:alt: Unisciti su Telegram
|
|
172
|
-
|
|
173
163
|
.. image:: https://img.shields.io/badge/AstraeLabs-blue.svg
|
|
174
164
|
:target: https://github.com/AstraeLabs/VibraVid
|
|
175
165
|
:alt: AstraeLabs Badge
|
|
@@ -158,7 +158,7 @@ class MediaFile:
|
|
|
158
158
|
for track in self.audio_track: # + self.subtitle_track:
|
|
159
159
|
lang = track.get("language", "Unknown")
|
|
160
160
|
if lang != "Unknown":
|
|
161
|
-
languages.add(ManageTitles.convert_iso(lang))
|
|
161
|
+
languages.add(ManageTitles.convert_iso(lang)[0])
|
|
162
162
|
return list(languages) if len(languages) > 0 else ["not found"]
|
|
163
163
|
|
|
164
164
|
@property
|
|
@@ -23,7 +23,7 @@ user_tags_file = "tags_list.json"
|
|
|
23
23
|
user_sign_file = "sign_list.json"
|
|
24
24
|
bane_file = "ban_list.json"
|
|
25
25
|
|
|
26
|
-
version = "0.
|
|
26
|
+
version = "0.10.1"
|
|
27
27
|
|
|
28
28
|
if os.name == "nt":
|
|
29
29
|
WATCHER_DESTINATION_PATH: Path = Path(
|
|
@@ -72,6 +72,9 @@ class TrackerConfig(BaseModel):
|
|
|
72
72
|
SIS_URL: str
|
|
73
73
|
SIS_APIKEY: str | None = None
|
|
74
74
|
SIS_PID: str | None = None
|
|
75
|
+
PTT_URL: str
|
|
76
|
+
PTT_APIKEY: str | None = None
|
|
77
|
+
PTT_PID: str | None = None
|
|
75
78
|
MULTI_TRACKER: list[str] | None = None
|
|
76
79
|
TMDB_APIKEY: str | None = None
|
|
77
80
|
TVDB_APIKEY: str | None = None
|
|
@@ -407,14 +410,14 @@ class Config(BaseModel):
|
|
|
407
410
|
else:
|
|
408
411
|
field = field.upper()
|
|
409
412
|
|
|
410
|
-
if field in ['ITT_URL'
|
|
413
|
+
if field in ['ITT_URL']:
|
|
411
414
|
section[field] = Validate.url(value=section[field], field_name=field)
|
|
412
415
|
|
|
413
|
-
if field in ['ITT_PID'
|
|
416
|
+
if field in ['ITT_PID']:
|
|
414
417
|
section[field] = Validate.pid(value=section[field], field_name=field,
|
|
415
418
|
multi_trackers=section['MULTI_TRACKER'])
|
|
416
419
|
|
|
417
|
-
elif field in ['ITT', 'SIS']:
|
|
420
|
+
elif field in ['ITT', 'SIS', 'PTT']:
|
|
418
421
|
section[field] = Validate.dict(value=section[field], field_name=field)
|
|
419
422
|
elif field in ['MULTI_TRACKER']:
|
|
420
423
|
section[field] = Validate.validate_multi_tracker(multi_tracker_list=section[field])
|
|
@@ -573,7 +576,10 @@ class Load:
|
|
|
573
576
|
"SIS_URL": "https://no_tracker.xyz",
|
|
574
577
|
"SIS_APIKEY": "no_key",
|
|
575
578
|
"SIS_PID": "no_key",
|
|
576
|
-
"
|
|
579
|
+
"PTT_URL": "https://no_tracker.xyz",
|
|
580
|
+
"PTT_APIKEY": "no_key",
|
|
581
|
+
"PTT_PID": "no_key",
|
|
582
|
+
"MULTI_TRACKER": ["itt","sis","ptt"],
|
|
577
583
|
"TMDB_APIKEY": "no_key",
|
|
578
584
|
"TVDB_APIKEY": "no_key",
|
|
579
585
|
"IMGBB_KEY": "no_key",
|
|
@@ -771,7 +777,7 @@ class JsonConfig:
|
|
|
771
777
|
# Add the new attributes in 'tracker config'
|
|
772
778
|
if self.tracker_diff_keys:
|
|
773
779
|
self.updated = True
|
|
774
|
-
missing_keys_dict = {key: '' for key in self.tracker_diff_keys}
|
|
780
|
+
missing_keys_dict = {key: 'no_key' for key in self.tracker_diff_keys}
|
|
775
781
|
self.tracker_config.update(missing_keys_dict)
|
|
776
782
|
|
|
777
783
|
def update_torrent_client_config(self):
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
2
|
|
|
3
3
|
from common.trackers.itt import itt_data
|
|
4
|
+
from common.trackers.ptt import ptt_data
|
|
4
5
|
from common.trackers.sis import sis_data
|
|
5
6
|
|
|
6
|
-
tracker_list = {'ITT': itt_data, 'SIS': sis_data}
|
|
7
|
+
tracker_list = {'ITT': itt_data, 'SIS': sis_data, 'PTT': ptt_data}
|
|
@@ -21,6 +21,15 @@ trackers_api_data = {
|
|
|
21
21
|
"announce": f"{config_settings.tracker_config.SIS_URL}/announce/{config_settings.tracker_config.SIS_PID}",
|
|
22
22
|
"source": "ShareIsland",
|
|
23
23
|
}
|
|
24
|
+
,
|
|
25
|
+
'PTT':
|
|
26
|
+
{
|
|
27
|
+
"url": config_settings.tracker_config.PTT_URL,
|
|
28
|
+
"api_key": config_settings.tracker_config.PTT_APIKEY,
|
|
29
|
+
"pass_key": config_settings.tracker_config.PTT_PID,
|
|
30
|
+
"announce": f"{config_settings.tracker_config.PTT_URL}/announce/{config_settings.tracker_config.PTT_PID}",
|
|
31
|
+
"source": "PolishTorrent",
|
|
32
|
+
}
|
|
24
33
|
|
|
25
34
|
}
|
|
26
35
|
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
|
|
3
|
+
ptt_data = {
|
|
4
|
+
"CATEGORY": {
|
|
5
|
+
"applications": 6,
|
|
6
|
+
"audiobooks": 25,
|
|
7
|
+
"edicola": 20,
|
|
8
|
+
"4kmovies": 23,
|
|
9
|
+
"movie": 1,
|
|
10
|
+
"game": 5,
|
|
11
|
+
"others": 19,
|
|
12
|
+
"music": 8,
|
|
13
|
+
"sports": 21,
|
|
14
|
+
"tv": 9,
|
|
15
|
+
},
|
|
16
|
+
"FREELECH": {"size20": 100,
|
|
17
|
+
"size15": 75,
|
|
18
|
+
"size10": 50,
|
|
19
|
+
"size5": 25},
|
|
20
|
+
"TYPE_ID": {
|
|
21
|
+
"bdrip": 11,
|
|
22
|
+
"blu-ray": 16,
|
|
23
|
+
"bluray": 16,
|
|
24
|
+
"brrip": 18,
|
|
25
|
+
"dvdrip": 15,
|
|
26
|
+
"discography": 3,
|
|
27
|
+
"encode": 7,
|
|
28
|
+
"full-disc": 1,
|
|
29
|
+
"fulldisc": 1,
|
|
30
|
+
"hdtv": 6,
|
|
31
|
+
"others": 12,
|
|
32
|
+
"polish cinema": 20,
|
|
33
|
+
"cinema": 13,
|
|
34
|
+
"cam": 13,
|
|
35
|
+
"webscr": 13,
|
|
36
|
+
"music": 14,
|
|
37
|
+
"remux": 2,
|
|
38
|
+
"sdtv": 17,
|
|
39
|
+
"tvrip": 19,
|
|
40
|
+
"vr": 21,
|
|
41
|
+
"web-dl": 4,
|
|
42
|
+
"webdl": 4,
|
|
43
|
+
"web": 4,
|
|
44
|
+
"web-dlmux": 4,
|
|
45
|
+
"pc": 5,
|
|
46
|
+
"pdf": 22,
|
|
47
|
+
"pc games": 23,
|
|
48
|
+
"playstation": 24,
|
|
49
|
+
"xbox": 25,
|
|
50
|
+
"nintendo switch": 26,
|
|
51
|
+
"vr_2": 27,
|
|
52
|
+
"retro": 28,
|
|
53
|
+
},
|
|
54
|
+
"TYPE_ID_AUDIO": {"flac": 8,
|
|
55
|
+
"mp3": 10,
|
|
56
|
+
},
|
|
57
|
+
"TAGS": {
|
|
58
|
+
"SD": 1,
|
|
59
|
+
"HD": 0,
|
|
60
|
+
},
|
|
61
|
+
|
|
62
|
+
"RESOLUTION": {
|
|
63
|
+
"4320p": 1,
|
|
64
|
+
"2160p": 2,
|
|
65
|
+
"1440p": 12,
|
|
66
|
+
"1080p": 3,
|
|
67
|
+
"1080i": 4,
|
|
68
|
+
"720p": 5,
|
|
69
|
+
"480p": 10,
|
|
70
|
+
},
|
|
71
|
+
|
|
72
|
+
"CODEC": [
|
|
73
|
+
"h261",
|
|
74
|
+
"h262",
|
|
75
|
+
"h263",
|
|
76
|
+
"h264",
|
|
77
|
+
"x264",
|
|
78
|
+
"x265",
|
|
79
|
+
"avc",
|
|
80
|
+
"h265",
|
|
81
|
+
"hevc",
|
|
82
|
+
"vp8",
|
|
83
|
+
"vp9",
|
|
84
|
+
"av1",
|
|
85
|
+
"mpeg-1",
|
|
86
|
+
"mpeg-4",
|
|
87
|
+
"wmv",
|
|
88
|
+
"theora",
|
|
89
|
+
"divx",
|
|
90
|
+
"xvid",
|
|
91
|
+
"prores",
|
|
92
|
+
"dnxhd",
|
|
93
|
+
"cinepak",
|
|
94
|
+
"indeo",
|
|
95
|
+
"dv",
|
|
96
|
+
"ffv1",
|
|
97
|
+
"sorenson",
|
|
98
|
+
"rv40",
|
|
99
|
+
"cineform",
|
|
100
|
+
"huffyuv",
|
|
101
|
+
"mjpeg",
|
|
102
|
+
"lagarith",
|
|
103
|
+
"msu",
|
|
104
|
+
"rle",
|
|
105
|
+
"dirac",
|
|
106
|
+
"wmv3",
|
|
107
|
+
"vorbis",
|
|
108
|
+
"smpte",
|
|
109
|
+
"mjpeg",
|
|
110
|
+
"ffvhuff",
|
|
111
|
+
"v210",
|
|
112
|
+
"yuv4:2:2",
|
|
113
|
+
"yuv4:4:4",
|
|
114
|
+
"hap",
|
|
115
|
+
"sheervideo",
|
|
116
|
+
"ut",
|
|
117
|
+
"quicktime",
|
|
118
|
+
"rududu",
|
|
119
|
+
"h.266",
|
|
120
|
+
"vvc",
|
|
121
|
+
"mjpeg 4:2:0",
|
|
122
|
+
"h.263+",
|
|
123
|
+
"h.263++",
|
|
124
|
+
"vp4",
|
|
125
|
+
"vp5",
|
|
126
|
+
"vp6",
|
|
127
|
+
"vp7",
|
|
128
|
+
"vp8",
|
|
129
|
+
"vp9",
|
|
130
|
+
"vp10",
|
|
131
|
+
"vp11",
|
|
132
|
+
"vp12",
|
|
133
|
+
"vp3",
|
|
134
|
+
"vp2",
|
|
135
|
+
"vp1",
|
|
136
|
+
"amv",
|
|
137
|
+
"daala",
|
|
138
|
+
"gecko",
|
|
139
|
+
"nvenc",
|
|
140
|
+
"bluray",
|
|
141
|
+
],
|
|
142
|
+
}
|
|
@@ -72,6 +72,7 @@ SIGNS_LIST = {
|
|
|
72
72
|
"FEDECAS89": "releaser",
|
|
73
73
|
"FGT": "releaser",
|
|
74
74
|
"FHC": "releaser",
|
|
75
|
+
"FLIPU": "releaser",
|
|
75
76
|
"FLT": "releaser",
|
|
76
77
|
"FLORIN993": "releaser",
|
|
77
78
|
"FLUX": "releaser",
|
|
@@ -135,6 +136,7 @@ SIGNS_LIST = {
|
|
|
135
136
|
"LOZIO-MIRCREW": "releaser",
|
|
136
137
|
"LULLOZZO": "releaser",
|
|
137
138
|
"LZ": "releaser",
|
|
139
|
+
"LAXII": "releaser",
|
|
138
140
|
"LZ59": "releaser",
|
|
139
141
|
"MADHEX": "releaser",
|
|
140
142
|
"MADSKY": "releaser",
|
|
@@ -21,7 +21,7 @@ class ManageTitles:
|
|
|
21
21
|
]
|
|
22
22
|
|
|
23
23
|
iso_3166_alpha3 = [
|
|
24
|
-
"ENG", "USA", "GBR", "ITA", "DEU", "FRA", "ESP", "SPA",
|
|
24
|
+
"ENG", "USA", "GBR", "ITA", "DEU", "GER", "FRA", "ESP", "SPA",
|
|
25
25
|
"BRA", "JPN", "CHN", "RUS", "PER", "NOR",
|
|
26
26
|
"SWE", "DAN", "POL", "HIN", "TUR", "ARA", "KOR", "VIE", "IND"
|
|
27
27
|
]
|
|
@@ -29,7 +29,7 @@ class ManageTitles:
|
|
|
29
29
|
iso_3166_alpha2_to_alpha3 = {
|
|
30
30
|
"EN": "ENG", "US": "USA", "GB": "GBR", "EN-US": "ENG", "EN-GB": "ENG", "EN-AU": "ENG",
|
|
31
31
|
"IT": "ITA",
|
|
32
|
-
"DE": "
|
|
32
|
+
"DE": "GER",
|
|
33
33
|
"FR": "FRA",
|
|
34
34
|
"ES": "SPA", "ES-ES": "SPA", "ES-MX": "SPA",
|
|
35
35
|
"BR": "BRA",
|
|
@@ -51,10 +51,10 @@ class ManageTitles:
|
|
|
51
51
|
|
|
52
52
|
long_name = {
|
|
53
53
|
"ENGLISH": "ENG",
|
|
54
|
-
"AMERICAN": "
|
|
55
|
-
"BRITISH": "
|
|
54
|
+
"AMERICAN": "ENG",
|
|
55
|
+
"BRITISH": "ENG",
|
|
56
56
|
"ITALIAN": "ITA",
|
|
57
|
-
"GERMAN": "
|
|
57
|
+
"GERMAN": "GER",
|
|
58
58
|
"FRENCH": "FRA",
|
|
59
59
|
"SPANISH": "SPA",
|
|
60
60
|
"BRAZILIAN": "BRA",
|
|
@@ -76,7 +76,7 @@ class ManageTitles:
|
|
|
76
76
|
}
|
|
77
77
|
|
|
78
78
|
@staticmethod
|
|
79
|
-
def convert_iso(code) -> list | str
|
|
79
|
+
def convert_iso(code) -> list[str] | str:
|
|
80
80
|
""" Convert iso 2 to 3 """
|
|
81
81
|
code = code.upper()
|
|
82
82
|
# if it's 'multilang'
|
|
@@ -95,7 +95,7 @@ class ManageTitles:
|
|
|
95
95
|
if match:
|
|
96
96
|
iso_code = match.group(1)
|
|
97
97
|
if len(iso_code) == 2: # // alpha-2
|
|
98
|
-
return ManageTitles.iso_3166_alpha2_to_alpha3.get(code,
|
|
98
|
+
return ManageTitles.iso_3166_alpha2_to_alpha3.get(code, "")
|
|
99
99
|
elif len(iso_code) == 3: # // alpha3
|
|
100
100
|
# return the same code provided it is an alpha3
|
|
101
101
|
if iso_code in ManageTitles.iso_3166_alpha3:
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
# -*- coding: utf-8 -*-
|
|
2
2
|
import json
|
|
3
3
|
|
|
4
|
+
import requests
|
|
5
|
+
|
|
4
6
|
from common.torrent_clients import TransmissionClient, QbittorrentClient, RTorrentClient
|
|
5
7
|
from common.command import CommandLine
|
|
6
8
|
from common.settings import Load, DEFAULT_JSON_PATH, USER_TAGS_PATH, USER_SIGN_PATH, BAN_TAGS_PATH, version
|
|
@@ -43,15 +45,25 @@ def main():
|
|
|
43
45
|
custom_console.bot_error_log(f"No tracker name provided. Please update your configuration file")
|
|
44
46
|
exit(1)
|
|
45
47
|
|
|
46
|
-
#
|
|
47
|
-
|
|
48
|
-
tracker
|
|
48
|
+
# Check if the tracker name exists
|
|
49
|
+
if cli.args.tracker:
|
|
50
|
+
if not any(cli.args.tracker.upper() in tracker.upper() for tracker in config.tracker_config.MULTI_TRACKER):
|
|
51
|
+
custom_console.bot_error_log(
|
|
52
|
+
f"Tracker '{cli.args.tracker}' not found. Please update your configuration file")
|
|
53
|
+
exit()
|
|
54
|
+
|
|
55
|
+
tracker = pvtTracker.Unit3d(tracker_name=cli.args.tracker)
|
|
49
56
|
if tracker.get_alive(alive=True, perPage=1):
|
|
50
|
-
custom_console.bot_log(f"Tracker -> '{
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
57
|
+
custom_console.bot_log(f"Tracker -> '{cli.args.tracker.upper()}' Online")
|
|
58
|
+
tracker_name_list = [cli.args.tracker.upper()]
|
|
59
|
+
|
|
60
|
+
# Send content to the multi_tracker list
|
|
61
|
+
if cli.args.mt:
|
|
62
|
+
tracker_name_list = config.tracker_config.MULTI_TRACKER
|
|
63
|
+
for tracker_data in tracker_name_list[1:]:
|
|
64
|
+
tracker = pvtTracker.Unit3d(tracker_name=tracker_data)
|
|
65
|
+
if tracker.get_alive(alive=True, perPage=1):
|
|
66
|
+
custom_console.bot_log(f"Tracker -> '{tracker_data.upper()}' Online")
|
|
55
67
|
|
|
56
68
|
# Test both clients only if used
|
|
57
69
|
if cli.args.noseed is False and cli.args.noup is False or cli.args.reseed is True:
|
|
@@ -78,22 +90,6 @@ def main():
|
|
|
78
90
|
custom_console.bot_error_log(f"You need to set a favorite 'torrent_client' in the config file")
|
|
79
91
|
exit(1)
|
|
80
92
|
|
|
81
|
-
# Check if the tracker name exists
|
|
82
|
-
if cli.args.tracker and cli.args.tracker not in config.tracker_config.MULTI_TRACKER:
|
|
83
|
-
custom_console.bot_error_log(f"Tracker '{cli.args.tracker}' not found. Please update your configuration file")
|
|
84
|
-
exit()
|
|
85
|
-
|
|
86
|
-
# Get default tracker
|
|
87
|
-
tracker_name_list = [config.tracker_config.MULTI_TRACKER[0]]
|
|
88
|
-
|
|
89
|
-
# Add a single announce if requested (disabled)
|
|
90
|
-
if cli.args.tracker:
|
|
91
|
-
tracker_name_list = [cli.args.tracker.upper()]
|
|
92
|
-
|
|
93
|
-
# Send content to the multi_tracker list
|
|
94
|
-
if cli.args.mt:
|
|
95
|
-
tracker_name_list = config.tracker_config.MULTI_TRACKER
|
|
96
|
-
|
|
97
93
|
# Load User Tags list
|
|
98
94
|
tags_list = None
|
|
99
95
|
if cli.args.buildtags:
|
|
@@ -138,7 +134,7 @@ def main():
|
|
|
138
134
|
torrent_archive_path=tracker_archive,
|
|
139
135
|
tags_list=tags_list,
|
|
140
136
|
sign_list=sign_list,
|
|
141
|
-
ban_list
|
|
137
|
+
ban_list=ban_list
|
|
142
138
|
)
|
|
143
139
|
bot.run()
|
|
144
140
|
|
|
@@ -181,7 +177,7 @@ def main():
|
|
|
181
177
|
|
|
182
178
|
# Dump
|
|
183
179
|
if cli.args.dump:
|
|
184
|
-
torrent_info.view_search(" ", inkey=False,save=True)
|
|
180
|
+
torrent_info.view_search(" ", inkey=False, save=True)
|
|
185
181
|
return
|
|
186
182
|
|
|
187
183
|
if cli.args.info:
|
|
@@ -35,7 +35,7 @@ class Media:
|
|
|
35
35
|
self._file_name: str | None = None
|
|
36
36
|
self._display_name: str | None = None
|
|
37
37
|
self._category: int | None = None
|
|
38
|
-
self._audio_languages: list[str]
|
|
38
|
+
self._audio_languages: list[str] = []
|
|
39
39
|
self._media_file: MediaFile | None = None
|
|
40
40
|
self._languages: list[str] | None = None
|
|
41
41
|
self._resolution: str | None = None
|
|
@@ -255,12 +255,15 @@ class Media:
|
|
|
255
255
|
if not self._audio_languages:
|
|
256
256
|
# Get languages from the title
|
|
257
257
|
filename_split = self.display_name.upper().split(" ")
|
|
258
|
+
|
|
258
259
|
for code in filename_split:
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
260
|
+
converted_code = ManageTitles.convert_iso(code)
|
|
261
|
+
if converted_code:
|
|
262
|
+
self._audio_languages.append(converted_code[0])
|
|
263
|
+
|
|
264
|
+
if not self._audio_languages:
|
|
265
|
+
# get from the audio track
|
|
266
|
+
self._audio_languages = self.languages
|
|
264
267
|
return self._audio_languages
|
|
265
268
|
|
|
266
269
|
@property
|
|
@@ -91,6 +91,11 @@ class Tracker(Myhttp):
|
|
|
91
91
|
f"or verify if the tracker is online",
|
|
92
92
|
)
|
|
93
93
|
exit(1)
|
|
94
|
+
except requests.exceptions.MissingSchema:
|
|
95
|
+
custom_console.bot_error_log(
|
|
96
|
+
f"TRACKER Connection error. Please check your configuration data"
|
|
97
|
+
)
|
|
98
|
+
exit(1)
|
|
94
99
|
except requests.exceptions.ReadTimeout as e:
|
|
95
100
|
custom_console.bot_error_log(f"TRACKER HTTP Error {e}. Tracker Offline !")
|
|
96
101
|
exit(1)
|
|
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.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/movie/details.py
RENAMED
|
File without changes
|
{unit3dup-0.9.29 → unit3dup-0.10.1}/common/external_services/theMovieDB/core/models/movie/movie.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
|
{unit3dup-0.9.29 → unit3dup-0.10.1}/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
|