Unit3Dup 0.14.6__tar.gz → 0.14.7__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 (107) hide show
  1. {unit3dup-0.14.6 → unit3dup-0.14.7}/PKG-INFO +1 -1
  2. {unit3dup-0.14.6 → unit3dup-0.14.7}/Unit3Dup.egg-info/PKG-INFO +1 -1
  3. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/api.py +7 -6
  4. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/trailers/api.py +1 -3
  5. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/settings.py +1 -1
  6. {unit3dup-0.14.6 → unit3dup-0.14.7}/pyproject.toml +1 -1
  7. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/pvtVideo.py +1 -1
  8. {unit3dup-0.14.6 → unit3dup-0.14.7}/LICENSE +0 -0
  9. {unit3dup-0.14.6 → unit3dup-0.14.7}/README.rst +0 -0
  10. {unit3dup-0.14.6 → unit3dup-0.14.7}/Unit3Dup.egg-info/SOURCES.txt +0 -0
  11. {unit3dup-0.14.6 → unit3dup-0.14.7}/Unit3Dup.egg-info/dependency_links.txt +0 -0
  12. {unit3dup-0.14.6 → unit3dup-0.14.7}/Unit3Dup.egg-info/entry_points.txt +0 -0
  13. {unit3dup-0.14.6 → unit3dup-0.14.7}/Unit3Dup.egg-info/requires.txt +0 -0
  14. {unit3dup-0.14.6 → unit3dup-0.14.7}/Unit3Dup.egg-info/top_level.txt +0 -0
  15. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/__init__.py +0 -0
  16. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/bdinfo_string.py +0 -0
  17. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/bittorrent.py +0 -0
  18. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/command.py +0 -0
  19. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/constants.py +0 -0
  20. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/database.py +0 -0
  21. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/__init__.py +0 -0
  22. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/ftpx/__init__.py +0 -0
  23. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/ftpx/client.py +0 -0
  24. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/ftpx/core/__init__.py +0 -0
  25. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/ftpx/core/ftpx_service.py +0 -0
  26. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/ftpx/core/ftpx_session.py +0 -0
  27. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/ftpx/core/menu.py +0 -0
  28. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/ftpx/core/models/__init__.py +0 -0
  29. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/ftpx/core/models/list.py +0 -0
  30. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/igdb/__init__.py +0 -0
  31. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/igdb/client.py +0 -0
  32. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/igdb/core/__init__.py +0 -0
  33. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/igdb/core/api.py +0 -0
  34. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/igdb/core/models/__init__.py +0 -0
  35. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/igdb/core/models/search.py +0 -0
  36. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/igdb/core/platformid.py +0 -0
  37. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/igdb/core/tags.py +0 -0
  38. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/imageHost.py +0 -0
  39. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/mediaresult.py +0 -0
  40. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/sessions/__init__.py +0 -0
  41. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/sessions/agents.py +0 -0
  42. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/sessions/exceptions.py +0 -0
  43. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/sessions/session.py +0 -0
  44. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/__init__.py +0 -0
  45. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/__init__.py +0 -0
  46. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/keywords.py +0 -0
  47. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/models/__init__.py +0 -0
  48. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/models/movie/__init__.py +0 -0
  49. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/models/movie/alternative.py +0 -0
  50. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/models/movie/details.py +0 -0
  51. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/models/movie/movie.py +0 -0
  52. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/models/movie/nowplaying.py +0 -0
  53. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/models/movie/release_info.py +0 -0
  54. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/models/movie/translations.py +0 -0
  55. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/models/tvshow/__init__.py +0 -0
  56. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/models/tvshow/alternative.py +0 -0
  57. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/models/tvshow/details.py +0 -0
  58. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/models/tvshow/on_the_air.py +0 -0
  59. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/models/tvshow/translations.py +0 -0
  60. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/models/tvshow/tvshow.py +0 -0
  61. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/theMovieDB/core/videos.py +0 -0
  62. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/trailers/__init__.py +0 -0
  63. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/trailers/response.py +0 -0
  64. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/external_services/tvdb.py +0 -0
  65. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/extractor.py +0 -0
  66. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/frames.py +0 -0
  67. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/mediainfo.py +0 -0
  68. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/mediainfo_string.py +0 -0
  69. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/tags.py +0 -0
  70. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/title.py +0 -0
  71. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/torrent_clients.py +0 -0
  72. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/trackers/__init__.py +0 -0
  73. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/trackers/ast.py +0 -0
  74. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/trackers/ban_list.py +0 -0
  75. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/trackers/data.py +0 -0
  76. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/trackers/itt.py +0 -0
  77. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/trackers/ptt.py +0 -0
  78. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/trackers/signs_list.py +0 -0
  79. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/trackers/sis.py +0 -0
  80. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/trackers/tags_list.py +0 -0
  81. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/trackers/trackers.py +0 -0
  82. {unit3dup-0.14.6 → unit3dup-0.14.7}/common/utility.py +0 -0
  83. {unit3dup-0.14.6 → unit3dup-0.14.7}/requirements.txt +0 -0
  84. {unit3dup-0.14.6 → unit3dup-0.14.7}/setup.cfg +0 -0
  85. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/__init__.py +0 -0
  86. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/__main__.py +0 -0
  87. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/automode.py +0 -0
  88. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/bot.py +0 -0
  89. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/duplicate.py +0 -0
  90. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/exceptions.py +0 -0
  91. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/media.py +0 -0
  92. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/media_manager/ContentManager.py +0 -0
  93. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/media_manager/DocuManager.py +0 -0
  94. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/media_manager/GameManager.py +0 -0
  95. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/media_manager/MediaInfoManager.py +0 -0
  96. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/media_manager/SeedManager.py +0 -0
  97. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/media_manager/TorrentManager.py +0 -0
  98. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/media_manager/VideoManager.py +0 -0
  99. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/media_manager/__init__.py +0 -0
  100. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/media_manager/common.py +0 -0
  101. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/pvtDocu.py +0 -0
  102. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/pvtTorrent.py +0 -0
  103. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/pvtTracker.py +0 -0
  104. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/torrent.py +0 -0
  105. {unit3dup-0.14.6 → unit3dup-0.14.7}/unit3dup/upload.py +0 -0
  106. {unit3dup-0.14.6 → unit3dup-0.14.7}/view/__init__.py +0 -0
  107. {unit3dup-0.14.6 → unit3dup-0.14.7}/view/custom_console.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: Unit3Dup
3
- Version: 0.14.6
3
+ Version: 0.14.7
4
4
  Summary: An uploader for the Unit3D torrent tracker
5
5
  Author: Parzival
6
6
  License-Expression: MIT
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: Unit3Dup
3
- Version: 0.14.6
3
+ Version: 0.14.7
4
4
  Summary: An uploader for the Unit3D torrent tracker
5
5
  Author: Parzival
6
6
  License-Expression: MIT
@@ -436,9 +436,11 @@ class DbOnline(TmdbAPI):
436
436
  yt_trailer = YtTrailer(self.query)
437
437
  result = yt_trailer.get_trailer_link()
438
438
  if result:
439
- # choose the first in the list
440
- # todo compare against the media title especially for the favorite channel
441
- return result[0].items[0].id.videoId
439
+ for r in result:
440
+ title = r.items[0].snippet.title if r.items else None
441
+ if self.query in title:
442
+ return r.items[0].id.videoId
443
+ return "not available"
442
444
  else:
443
445
  user_youtube_id = custom_console.user_input_str(message="Sorry trailer not found."
444
446
  " Please digit a valid Youtube ID (0=skip)->")
@@ -450,8 +452,7 @@ class DbOnline(TmdbAPI):
450
452
  # Search for tmdb trailer
451
453
  trailers = self._videos(video_id, self.category)
452
454
  if trailers:
453
- trailer = next((video for video in trailers if video.type.lower() == 'trailer'
454
- and video.site.lower() == 'youtube'), None)
455
+ trailer = next((video for video in trailers if video.site.lower() == 'youtube'), None)
455
456
  if trailer:
456
457
  return trailer.key
457
458
  else:
@@ -475,7 +476,7 @@ class DbOnline(TmdbAPI):
475
476
  if results.tvdb_id:
476
477
  custom_console.bot_warning_log(f"'TVDB ID'........ '{results.tvdb_id}'")
477
478
  custom_console.bot_log(f"'TMDB KEYWORDS'.. {results.keywords_list}")
478
- if 'SKIPPED' in results.trailer_key.upper():
479
+ if results.trailer_key.upper() in ['SKIPPED', 'NOT AVAILABLE']:
479
480
  custom_console.bot_log(f"'TRAILER' ....... {results.trailer_key}")
480
481
  else:
481
482
  custom_console.bot_log(f"'TRAILER' ....... https://www.youtube.com/watch?v={results.trailer_key}")
@@ -22,7 +22,7 @@ class YtTrailer:
22
22
  'q': f'{self.title} trailer',
23
23
  'type': 'video',
24
24
  'key': config_settings.tracker_config.YOUTUBE_KEY,
25
- 'maxResults': 3,
25
+ 'maxResults': 50,
26
26
  }
27
27
 
28
28
  def get_trailer_link(self) -> list[YouTubeSearchResponse] | None:
@@ -37,11 +37,9 @@ class YtTrailer:
37
37
  response = None
38
38
 
39
39
  while attempt < max_attempts:
40
- custom_console.bot_log("Searching YouTube for a trailer...")
41
40
  try:
42
41
  response = requests.get(self.url, params=self.params, timeout=5)
43
42
  if response.status_code == 200:
44
- custom_console.bot_log("YouTube Response with no error")
45
43
  break
46
44
  except requests.RequestException:
47
45
  custom_console.error(f"Could not connect to YouTube API {response.status_code}")
@@ -24,7 +24,7 @@ user_tags_file = "tags_list.json"
24
24
  user_sign_file = "sign_list.json"
25
25
  bane_file = "ban_list.json"
26
26
 
27
- version = "0.14.6"
27
+ version = "0.14.7"
28
28
 
29
29
  if os.name == "nt":
30
30
  WATCHER_DESTINATION_PATH: Path = Path(
@@ -5,7 +5,7 @@ build-backend = "setuptools.build_meta"
5
5
  [project]
6
6
  dynamic = ["dependencies"]
7
7
  name = "Unit3Dup"
8
- version = "0.14.6"
8
+ version = "0.14.7"
9
9
  description = "An uploader for the Unit3D torrent tracker"
10
10
  readme = "README.rst"
11
11
  requires-python = ">=3.10"
@@ -94,7 +94,7 @@ class Video:
94
94
  [center][url={config_settings.user_preferences.MY_URL}]Tutte le mie release[/url][/center]
95
95
  """
96
96
 
97
- if 'SKIPPED' not in self.trailer_key.upper() and self.trailer_key.upper() is not None:
97
+ if self.trailer_key is not None and self.trailer_key.upper() not in ['SKIPPED', 'NOT AVAILABLE']:
98
98
  self.description += (f"[b][spoiler=Spoiler: PLAY TRAILER][center][youtube]{self.trailer_key}[/youtube]"
99
99
  f"[/center][/spoiler][/b]")
100
100
  self.is_hd = is_hd
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