warp-beacon 2.6.16__tar.gz → 2.6.17__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 (62) hide show
  1. {warp_beacon-2.6.16/warp_beacon.egg-info → warp_beacon-2.6.17}/PKG-INFO +1 -1
  2. warp_beacon-2.6.17/warp_beacon/__version__.py +2 -0
  3. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scraper/__init__.py +1 -0
  4. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scraper/account_selector.py +24 -0
  5. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scraper/fail_handler.py +2 -4
  6. {warp_beacon-2.6.16 → warp_beacon-2.6.17/warp_beacon.egg-info}/PKG-INFO +1 -1
  7. warp_beacon-2.6.16/warp_beacon/__version__.py +0 -2
  8. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/LICENSE +0 -0
  9. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/MANIFEST.in +0 -0
  10. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/README.md +0 -0
  11. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/assets/placeholder.gif +0 -0
  12. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/etc/.gitignore +0 -0
  13. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/etc/accounts.json +0 -0
  14. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/etc/proxies.json +0 -0
  15. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/etc/warp_beacon.conf +0 -0
  16. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/etc/warp_beacon.service +0 -0
  17. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/pyproject.toml +0 -0
  18. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/setup.cfg +0 -0
  19. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/setup.py +0 -0
  20. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/__init__.py +0 -0
  21. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/compress/__init__.py +0 -0
  22. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/compress/video.py +0 -0
  23. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/jobs/__init__.py +0 -0
  24. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/jobs/abstract.py +0 -0
  25. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/jobs/download_job.py +0 -0
  26. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/jobs/types.py +0 -0
  27. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/jobs/upload_job.py +0 -0
  28. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/mediainfo/__init__.py +0 -0
  29. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/mediainfo/abstract.py +0 -0
  30. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/mediainfo/audio.py +0 -0
  31. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/mediainfo/silencer.py +0 -0
  32. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/mediainfo/video.py +0 -0
  33. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scheduler/__init__.py +0 -0
  34. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scheduler/instagram_human.py +0 -0
  35. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scheduler/scheduler.py +0 -0
  36. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scraper/abstract.py +0 -0
  37. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scraper/exceptions.py +0 -0
  38. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scraper/instagram/__init__.py +0 -0
  39. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scraper/instagram/captcha.py +0 -0
  40. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scraper/instagram/instagram.py +0 -0
  41. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scraper/link_resolver.py +0 -0
  42. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scraper/youtube/__init__.py +0 -0
  43. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scraper/youtube/abstract.py +0 -0
  44. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scraper/youtube/music.py +0 -0
  45. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scraper/youtube/shorts.py +0 -0
  46. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/scraper/youtube/youtube.py +0 -0
  47. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/storage/__init__.py +0 -0
  48. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/storage/mongo.py +0 -0
  49. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/telegram/__init__.py +0 -0
  50. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/telegram/bot.py +0 -0
  51. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/telegram/caption_shortener.py +0 -0
  52. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/telegram/handlers.py +0 -0
  53. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/telegram/placeholder_message.py +0 -0
  54. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/telegram/utils.py +0 -0
  55. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/uploader/__init__.py +0 -0
  56. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/warp_beacon.py +0 -0
  57. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon/yt_auth.py +0 -0
  58. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon.egg-info/SOURCES.txt +0 -0
  59. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon.egg-info/dependency_links.txt +0 -0
  60. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon.egg-info/entry_points.txt +0 -0
  61. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/warp_beacon.egg-info/requires.txt +0 -0
  62. {warp_beacon-2.6.16 → warp_beacon-2.6.17}/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.16
3
+ Version: 2.6.17
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.6.17"
2
+
@@ -397,6 +397,7 @@ class AsyncDownloader(object):
397
397
 
398
398
  def stop_all(self) -> None:
399
399
  self.allow_loop.value = 0
400
+ self.acc_selector.save_ig_request_count()
400
401
  for proc in self.workers:
401
402
  if proc.is_alive():
402
403
  logging.info("stopping process #%d", proc.pid)
@@ -40,9 +40,33 @@ class AccountSelector(object):
40
40
  if proxy_file_path:
41
41
  with open(proxy_file_path, 'r', encoding="utf-8") as f:
42
42
  self.proxies = json.loads(f.read())
43
+
44
+ self.load_ig_request_count()
43
45
  else:
44
46
  raise ValueError("Accounts file not found")
45
47
 
48
+ def save_ig_request_count(self) -> None:
49
+ try:
50
+ state = {"ig_count": self.ig_request_count.value}
51
+ with open(f"{self.session_dir}/ig_request_counter.json", "w+", encoding="utf-8") as f:
52
+ f.write(json.dumps(state))
53
+ except Exception as e:
54
+ logging.error("Failed to save accounts states!")
55
+ logging.exception(e)
56
+
57
+ def load_ig_request_count(self) -> None:
58
+ try:
59
+ state = {}
60
+ filepath = f"{self.session_dir}/ig_request_counter.json"
61
+ if os.path.exists(filepath):
62
+ with open(f"{self.session_dir}/ig_request_counter.json", "r", encoding="utf-8") as f:
63
+ state = json.loads(f.read())
64
+ if state:
65
+ self.ig_request_count.value = int(state.get("ig_count", 0))
66
+ except Exception as e:
67
+ logging.error("Failed to save accounts states!")
68
+ logging.exception(e)
69
+
46
70
  def get_current_proxy(self) -> Optional[dict]:
47
71
  return self.current_proxy
48
72
 
@@ -1,12 +1,10 @@
1
- import os
2
-
3
1
  import pickle
4
2
 
3
+ import logging
4
+
5
5
  from warp_beacon.storage.mongo import DBClient
6
6
  from warp_beacon.jobs.download_job import DownloadJob
7
7
 
8
- import logging
9
-
10
8
  class FailHandler(object):
11
9
  client = None
12
10
  db = None
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: warp_beacon
3
- Version: 2.6.16
3
+ Version: 2.6.17
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.16"
2
-
File without changes
File without changes
File without changes
File without changes
File without changes