warp-beacon 2.6.100__tar.gz → 2.7.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.
Files changed (70) hide show
  1. {warp_beacon-2.6.100/warp_beacon.egg-info → warp_beacon-2.7.1}/PKG-INFO +1 -1
  2. warp_beacon-2.7.1/warp_beacon/__version__.py +2 -0
  3. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/instagram/instagram.py +2 -2
  4. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/utils.py +1 -1
  5. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/youtube/abstract.py +3 -3
  6. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/telegram/bot.py +2 -1
  7. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/telegram/progress_bar.py +4 -4
  8. {warp_beacon-2.6.100 → warp_beacon-2.7.1/warp_beacon.egg-info}/PKG-INFO +1 -1
  9. warp_beacon-2.6.100/warp_beacon/__version__.py +0 -2
  10. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/LICENSE +0 -0
  11. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/MANIFEST.in +0 -0
  12. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/README.md +0 -0
  13. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/assets/cc-group-black.png +0 -0
  14. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/assets/placeholder.gif +0 -0
  15. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/etc/.gitignore +0 -0
  16. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/etc/accounts.json +0 -0
  17. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/etc/proxies.json +0 -0
  18. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/etc/warp_beacon.conf +0 -0
  19. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/etc/warp_beacon.service +0 -0
  20. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/pyproject.toml +0 -0
  21. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/setup.cfg +0 -0
  22. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/setup.py +0 -0
  23. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/__init__.py +0 -0
  24. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/compress/__init__.py +0 -0
  25. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/compress/video.py +0 -0
  26. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/jobs/__init__.py +0 -0
  27. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/jobs/abstract.py +0 -0
  28. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/jobs/download_job.py +0 -0
  29. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/jobs/types.py +0 -0
  30. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/jobs/upload_job.py +0 -0
  31. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/mediainfo/__init__.py +0 -0
  32. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/mediainfo/abstract.py +0 -0
  33. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/mediainfo/audio.py +0 -0
  34. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/mediainfo/silencer.py +0 -0
  35. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/mediainfo/video.py +0 -0
  36. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scheduler/__init__.py +0 -0
  37. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scheduler/instagram_human.py +0 -0
  38. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scheduler/scheduler.py +0 -0
  39. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/__init__.py +0 -0
  40. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/abstract.py +0 -0
  41. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/account_selector.py +0 -0
  42. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/exceptions.py +0 -0
  43. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/fail_handler.py +0 -0
  44. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/instagram/__init__.py +0 -0
  45. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/instagram/captcha.py +0 -0
  46. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/instagram/wb_instagrapi.py +0 -0
  47. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/link_resolver.py +0 -0
  48. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/youtube/__init__.py +0 -0
  49. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/youtube/music.py +0 -0
  50. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/youtube/shorts.py +0 -0
  51. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/scraper/youtube/youtube.py +0 -0
  52. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/storage/__init__.py +0 -0
  53. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/storage/mongo.py +0 -0
  54. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/telegram/__init__.py +0 -0
  55. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/telegram/caption_shortener.py +0 -0
  56. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/telegram/download_status.py +0 -0
  57. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/telegram/edit_message.py +0 -0
  58. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/telegram/handlers.py +0 -0
  59. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/telegram/placeholder_message.py +0 -0
  60. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/telegram/progress_file_reader.py +0 -0
  61. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/telegram/types.py +0 -0
  62. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/telegram/utils.py +0 -0
  63. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/uploader/__init__.py +0 -0
  64. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/warp_beacon.py +0 -0
  65. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon/yt_auth.py +0 -0
  66. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon.egg-info/SOURCES.txt +0 -0
  67. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon.egg-info/dependency_links.txt +0 -0
  68. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon.egg-info/entry_points.txt +0 -0
  69. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon.egg-info/requires.txt +0 -0
  70. {warp_beacon-2.6.100 → warp_beacon-2.7.1}/warp_beacon.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: warp_beacon
3
- Version: 2.6.100
3
+ Version: 2.7.1
4
4
  Summary: Telegram bot for expanding external media links
5
5
  Home-page: https://github.com/sb0y/warp_beacon
6
6
  Author: Andrey Bagrintsev
@@ -0,0 +1,2 @@
1
+ __version__ = "2.7.1"
2
+
@@ -42,7 +42,7 @@ class InstagramScraper(ScraperAbstract):
42
42
  client_session_id = ""
43
43
 
44
44
  def __init__(self, client_session_id: str, account: tuple, proxy: dict=None) -> None:
45
- self._download_progress_threshold = 20
45
+ self._download_progress_threshold = 5
46
46
  self.client_session_id = client_session_id
47
47
  super().__init__(account, proxy)
48
48
  #
@@ -460,4 +460,4 @@ class InstagramScraper(ScraperAbstract):
460
460
  "report_type": ReportType.PROGRESS
461
461
  }
462
462
  self.status_pipe.send(msg)
463
- self._download_progress_threshold += 20
463
+ self._download_progress_threshold += 5
@@ -16,5 +16,5 @@ class ScraperUtils(object):
16
16
  return random_client
17
17
 
18
18
  @staticmethod
19
- def get_ua(browsers: list = ['Facebook', 'Android'], platforms: list = ['mobile', 'tablet'], os: list =['Android', 'iOS']) -> str:
19
+ def get_ua(browsers: list = ['Facebook', 'Android'], platforms: list = ['mobile', 'tablet'], os: list =['Android']) -> str:
20
20
  return ScraperUtils.get_ua_dict(browsers=browsers, platforms=platforms, os=os)["useragent"]
@@ -37,7 +37,7 @@ class YoutubeAbstract(ScraperAbstract):
37
37
 
38
38
  def __init__(self, account: tuple, proxy: dict=None) -> None:
39
39
  super().__init__(account, proxy)
40
- self._download_progress_threshold = 20
40
+ self._download_progress_threshold = 5
41
41
 
42
42
  def validate_session(self) -> int:
43
43
  try:
@@ -245,7 +245,7 @@ class YoutubeAbstract(ScraperAbstract):
245
245
  self.status_pipe.send(msg)
246
246
  logging.debug("[Download worker] Downloaded %d%%", percentage_of_completion)
247
247
  if total_size > 0:
248
- self._download_progress_threshold += 20
248
+ self._download_progress_threshold += 5
249
249
 
250
250
  def build_proxies(self, proxy_dsn: str) -> dict:
251
251
  if not proxy_dsn:
@@ -310,7 +310,7 @@ class YoutubeAbstract(ScraperAbstract):
310
310
  self.status_pipe.send(msg)
311
311
  logging.debug("[Download worker][yt_dlp] Downloaded %d%%", percentage_of_completion)
312
312
  if total_size > 0:
313
- self._download_progress_threshold += 20
313
+ self._download_progress_threshold += 5
314
314
 
315
315
  def build_yt_dlp(self, timeout: int = 60) -> yt_dlp.YoutubeDL:
316
316
  auth_data = {}
@@ -64,7 +64,8 @@ class Bot(object):
64
64
  api_id=tg_api_id,
65
65
  api_hash=tg_api_hash,
66
66
  workdir='/var/warp_beacon',
67
- workers=int(os.environ.get("TG_WORKERS_POOL_SIZE", default=workers_amount))
67
+ workers=int(os.environ.get("TG_WORKERS_POOL_SIZE", default=workers_amount)),
68
+ ipv6=os.environ.get("TG_IPV6", default="false").lower() in ("1", "true", "yes")
68
69
  )
69
70
 
70
71
  self.editor = EditMessage(self.client)
@@ -12,7 +12,7 @@ class ProgressBar(object):
12
12
  MAX_PROGRESS_RENDER_SIZE = 1_500_000 # 1 MB
13
13
 
14
14
  def __init__(self, client: Client) -> None:
15
- self._next_threshold = 20
15
+ self._next_threshold = 5
16
16
  self.client = client
17
17
  self.complete = False
18
18
 
@@ -97,9 +97,9 @@ class ProgressBar(object):
97
97
  percent = 0
98
98
  if total:
99
99
  percent = round(current * 100 / (total or 1))
100
- if percent >= 100:
100
+ if percent > 100:
101
101
  return
102
- if total == 0 or percent >= self._next_threshold:
102
+ if total == 0 or percent == 0 or percent >= self._next_threshold:
103
103
  #pbar = self.make_progress_bar(percent, 100, 25)
104
104
  pbar = self.make_emoji_progress_bar(percent, 10)
105
105
  logging.info("[Progress bar]: Operation: %s %d%%", operation, percent)
@@ -121,7 +121,7 @@ class ProgressBar(object):
121
121
  logging.warning("An error occurred while setup task to update progress bar")
122
122
  logging.exception(e)
123
123
  if total > 0:
124
- self._next_threshold += 20
124
+ self._next_threshold += 5
125
125
 
126
126
  @staticmethod
127
127
  def make_hash(chat_id: str | int, message_id: int, algorithm: str = 'sha256') -> str:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: warp_beacon
3
- Version: 2.6.100
3
+ Version: 2.7.1
4
4
  Summary: Telegram bot for expanding external media links
5
5
  Home-page: https://github.com/sb0y/warp_beacon
6
6
  Author: Andrey Bagrintsev
@@ -1,2 +0,0 @@
1
- __version__ = "2.6.100"
2
-
File without changes
File without changes
File without changes
File without changes
File without changes