warp-beacon 2.6.86__py3-none-any.whl → 2.6.87__py3-none-any.whl

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.
@@ -1,2 +1,2 @@
1
- __version__ = "2.6.86"
1
+ __version__ = "2.6.87"
2
2
 
@@ -31,6 +31,7 @@ from warp_beacon.jobs.download_job import DownloadJob
31
31
  from warp_beacon.telegram.utils import Utils
32
32
  from warp_beacon.scraper.instagram.wb_instagrapi import WBClient
33
33
  from warp_beacon.telegram.types import ReportType
34
+ from warp_beacon.scraper.utils import ScraperUtils
34
35
 
35
36
  INST_SESSION_FILE_TPL = "/var/warp_beacon/inst_session_account_%d.json"
36
37
 
@@ -61,10 +62,7 @@ class InstagramScraper(ScraperAbstract):
61
62
  "Accept": "*/*",
62
63
  "Accept-Encoding": "gzip, deflate, br",
63
64
  "Accept-Language": "en-US,en;q=0.9",
64
- "User-Agent": (
65
- "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 "
66
- "(KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36"
67
- )
65
+ "User-Agent": ScraperUtils.get_ua()
68
66
  })
69
67
  self.cl.set_progress_callback(self.download_progress)
70
68
 
@@ -96,7 +94,7 @@ class InstagramScraper(ScraperAbstract):
96
94
  "uuid": uuids.get("uuid", self.cl.generate_uuid()),
97
95
  "client_session_id": self.client_session_id,
98
96
  "advertising_id": uuids.get("advertising_id", self.cl.generate_uuid()),
99
- "device_id": uuids.get("device_id", self.cl.generate_uuid())
97
+ "device_id": uuids.get("device_id", self.cl.generate_android_device_id())
100
98
  })
101
99
 
102
100
  def safe_write_session(self) -> None:
@@ -7,6 +7,8 @@ import requests
7
7
  from instagrapi import Client
8
8
  from instagrapi.exceptions import VideoNotDownload
9
9
 
10
+ from warp_beacon.scraper.utils import ScraperUtils
11
+
10
12
  class WBClient(Client):
11
13
  """
12
14
  patched instagrapi
@@ -17,10 +19,7 @@ class WBClient(Client):
17
19
  self.session = requests.Session()
18
20
  # may be I should remove '"Sec-Fetch-*", "Upgrade-Insecure-Requests", "DNT"' ?
19
21
  self.session.headers.update({
20
- "User-Agent": (
21
- "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 "
22
- "(KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36"
23
- ),
22
+ "User-Agent": ScraperUtils.get_ua(),
24
23
  "Accept": (
25
24
  "text/html,application/xhtml+xml,application/xml;"
26
25
  "q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8"
@@ -29,12 +28,12 @@ class WBClient(Client):
29
28
  "Accept-Encoding": "gzip, deflate, br",
30
29
  "Referer": "https://www.instagram.com/",
31
30
  "Connection": "keep-alive",
32
- "Sec-Fetch-Site": "same-origin",
33
- "Sec-Fetch-Mode": "navigate",
34
- "Sec-Fetch-User": "?1",
35
- "Sec-Fetch-Dest": "document",
36
- "Upgrade-Insecure-Requests": "1",
37
- "DNT": "1",
31
+ #"Sec-Fetch-Site": "same-origin",
32
+ #"Sec-Fetch-Mode": "navigate",
33
+ #"Sec-Fetch-User": "?1",
34
+ #"Sec-Fetch-Dest": "document",
35
+ #"Upgrade-Insecure-Requests": "1",
36
+ #"DNT": "1",
38
37
  })
39
38
  self.essential_params = {"oe", "oh", "_nc_ht", "_nc_cat", "_nc_oc", "_nc_ohc", "_nc_gid"}
40
39
 
@@ -1,4 +1,20 @@
1
- #import logging
1
+ import logging
2
2
 
3
- class Utils(object):
4
- pass
3
+ from fake_useragent import UserAgent
4
+
5
+ class ScraperUtils(object):
6
+ @staticmethod
7
+ def get_ua_dict() -> dict:
8
+ random_client = None
9
+ try:
10
+ ua = UserAgent(browsers=['Facebook', 'Android'], platforms=['mobile', 'tablet'], os=['Android', 'iOS'])
11
+ random_client = ua.getRandom
12
+ logging.info("Select random UA: %s", random_client)
13
+ except Exception as e:
14
+ logging.warning("Exception occurrd while generating random client UA!", exc_info=e)
15
+ random_client = {'useragent': 'Mozilla/5.0 (Linux; Android 14; SM-S911B Build/UP1A.231005.007; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/133.0.6943.117 Mobile Safari/537.36 [FB_IAB/FB4A;FBAV/502.0.0.66.79;IABMV/1;]', 'percent': 0.017937771404345798, 'type': 'mobile', 'device_brand': 'Samsung', 'browser': 'Facebook', 'browser_version': '502.0.0', 'browser_version_major_minor': 502.0, 'os': 'Android', 'os_version': '14', 'platform': 'Linux aarch64'}
16
+ return random_client
17
+
18
+ @staticmethod
19
+ def get_ua() -> str:
20
+ return ScraperUtils.get_ua_dict()["useragent"]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: warp_beacon
3
- Version: 2.6.86
3
+ Version: 2.6.87
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
@@ -241,6 +241,7 @@ Requires-Dist: yt_dlp
241
241
  Requires-Dist: pydub
242
242
  Requires-Dist: SpeechRecognition
243
243
  Requires-Dist: playwright
244
+ Requires-Dist: fake-useragent
244
245
  Dynamic: author
245
246
  Dynamic: home-page
246
247
  Dynamic: license-file
@@ -4,7 +4,7 @@ var/warp_beacon/accounts.json,sha256=OsXdncs6h88xrF_AP6_WDCK1waGBn9SR-uYdIeK37GM
4
4
  var/warp_beacon/placeholder.gif,sha256=cE5CGJVaop4Sx21zx6j4AyoHU0ncmvQuS2o6hJfEH88,6064
5
5
  var/warp_beacon/proxies.json,sha256=VnjlQDXumOEq72ZFjbh6IqHS1TEHqn8HPYAZqWCeSIA,95
6
6
  warp_beacon/__init__.py,sha256=_rThNODmz0nDp_n4mWo_HKaNFE5jk1_7cRhHyYaencI,163
7
- warp_beacon/__version__.py,sha256=3jfGBfZMq-huVJ0EkVBkNb6ToGe-hxHYgbahntg0uzI,24
7
+ warp_beacon/__version__.py,sha256=FgjYXoAFmDQi-ZsqKjg6shGTSafYxf_8wotLCLckBXA,24
8
8
  warp_beacon/warp_beacon.py,sha256=ED43vNzdjDUJ_9qLCbri0bjWLWEJ69BENGj9i7G6AvM,342
9
9
  warp_beacon/yt_auth.py,sha256=GUTKqYr_tzDC-07Lx_ahWXSag8EyLxXBUnQbDBIkEmk,6022
10
10
  warp_beacon/compress/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -28,11 +28,11 @@ warp_beacon/scraper/account_selector.py,sha256=VmXH8SHZqQ6a2mrt2agzDWepE3v46QrFL
28
28
  warp_beacon/scraper/exceptions.py,sha256=EKwoF0oH2xZWbNU-v8DOaWK5skKwa3s1yTIBdlcfMpc,1452
29
29
  warp_beacon/scraper/fail_handler.py,sha256=zcPK3ZVEsu6JmHYcWP7L3naTRK3gWFVRkpP84VBOtJs,964
30
30
  warp_beacon/scraper/link_resolver.py,sha256=Rc9ZuMyOo3iPywDHwjngy-WRQ2SXhJwxcg-5ripx7tM,2447
31
- warp_beacon/scraper/utils.py,sha256=xJfCVhiLjVPoFVupE10sTzX7UpgNWbx2EeYIsoYXGDk,43
31
+ warp_beacon/scraper/utils.py,sha256=fEqKFlWkZTyThU1rokvMEHIVdc8bk70kCWo5LPvnZYE,1045
32
32
  warp_beacon/scraper/instagram/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
33
33
  warp_beacon/scraper/instagram/captcha.py,sha256=9UYziuqB3Tsat_ET6ex-cnZDbi6yCnsXHSpmE8MuUHk,4651
34
- warp_beacon/scraper/instagram/instagram.py,sha256=Z2L9E5dvY2UQGStK1C7MAFmnEPEfH7DwVUObeOc5iNg,17187
35
- warp_beacon/scraper/instagram/wb_instagrapi.py,sha256=Dh0SlCZcrgLC4IsIqKUV3xszQXKlrdsll0nCAxoiXHI,5289
34
+ warp_beacon/scraper/instagram/instagram.py,sha256=64XxGui7bPuiJT-Hqlg1KQT9GsbX1YMXzEUJdzvkxLQ,17141
35
+ warp_beacon/scraper/instagram/wb_instagrapi.py,sha256=OECHz1eK6J5bfw2H84CdywwxBNegkNb_UhDr0MtNtZ4,5237
36
36
  warp_beacon/scraper/youtube/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
37
37
  warp_beacon/scraper/youtube/abstract.py,sha256=WLbQKtrKSwpZUQlpjL2XI7z8XxoRCtVxrRjSXFJmXuM,13230
38
38
  warp_beacon/scraper/youtube/music.py,sha256=5AeSBQyUgVCJT2hoBCV2WvlyuV9US09SYJhmBG_P9F8,2755
@@ -52,9 +52,9 @@ warp_beacon/telegram/progress_file_reader.py,sha256=e3equyNKlKs764AD-iE9QRsh3YDH
52
52
  warp_beacon/telegram/types.py,sha256=Kvdng6uCF1HRoqQgGW1ZYYPJoVuYkFb-LDvMBbW5Hjk,89
53
53
  warp_beacon/telegram/utils.py,sha256=1Lq67aRylVJzbwSyvAgjPAGjJZFATkICvAj3TJGuJiM,4635
54
54
  warp_beacon/uploader/__init__.py,sha256=j3qcuKhpchseZLGzSsSiogqe6WdMbkK8d3I-ConhNRs,5687
55
- warp_beacon-2.6.86.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
56
- warp_beacon-2.6.86.dist-info/METADATA,sha256=BQWnSiwqrFa8cs6CBD9xnZwE_XBi0Bq3mRay_GpIPdQ,22706
57
- warp_beacon-2.6.86.dist-info/WHEEL,sha256=DnLRTWE75wApRYVsjgc6wsVswC54sMSJhAEd4xhDpBk,91
58
- warp_beacon-2.6.86.dist-info/entry_points.txt,sha256=eSB61Rb89d56WY0O-vEIQwkn18J-4CMrJcLA_R_8h3g,119
59
- warp_beacon-2.6.86.dist-info/top_level.txt,sha256=5YQRN46STNg81V_3jdzZ6bftkMxhe1hTPSFvJugDu84,1405
60
- warp_beacon-2.6.86.dist-info/RECORD,,
55
+ warp_beacon-2.6.87.dist-info/licenses/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
56
+ warp_beacon-2.6.87.dist-info/METADATA,sha256=d99T_Qpshl5vd8q5Ikhz44db0tH5b8Lpe4fLaxoTR4o,22736
57
+ warp_beacon-2.6.87.dist-info/WHEEL,sha256=DnLRTWE75wApRYVsjgc6wsVswC54sMSJhAEd4xhDpBk,91
58
+ warp_beacon-2.6.87.dist-info/entry_points.txt,sha256=eSB61Rb89d56WY0O-vEIQwkn18J-4CMrJcLA_R_8h3g,119
59
+ warp_beacon-2.6.87.dist-info/top_level.txt,sha256=5YQRN46STNg81V_3jdzZ6bftkMxhe1hTPSFvJugDu84,1405
60
+ warp_beacon-2.6.87.dist-info/RECORD,,