warp-beacon 2.2.22__py3-none-any.whl → 2.2.24__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.
- warp_beacon/__version__.py +1 -1
- warp_beacon/scheduler/scheduler.py +3 -2
- warp_beacon/scraper/__init__.py +24 -20
- {warp_beacon-2.2.22.dist-info → warp_beacon-2.2.24.dist-info}/METADATA +1 -1
- {warp_beacon-2.2.22.dist-info → warp_beacon-2.2.24.dist-info}/RECORD +9 -9
- {warp_beacon-2.2.22.dist-info → warp_beacon-2.2.24.dist-info}/LICENSE +0 -0
- {warp_beacon-2.2.22.dist-info → warp_beacon-2.2.24.dist-info}/WHEEL +0 -0
- {warp_beacon-2.2.22.dist-info → warp_beacon-2.2.24.dist-info}/entry_points.txt +0 -0
- {warp_beacon-2.2.22.dist-info → warp_beacon-2.2.24.dist-info}/top_level.txt +0 -0
warp_beacon/__version__.py
CHANGED
@@ -1,2 +1,2 @@
|
|
1
|
-
__version__ = "2.2.
|
1
|
+
__version__ = "2.2.24"
|
2
2
|
|
@@ -90,8 +90,9 @@ class IGScheduler(object):
|
|
90
90
|
elapsed = time.time() - start_time
|
91
91
|
self.state["remaining"] -= elapsed
|
92
92
|
|
93
|
-
|
94
|
-
|
93
|
+
if self.running:
|
94
|
+
logging.info("Scheduler waking up")
|
95
|
+
self.validate_ig_session()
|
95
96
|
self.save_state()
|
96
97
|
except Exception as e:
|
97
98
|
logging.error("An error occurred in scheduler thread!")
|
warp_beacon/scraper/__init__.py
CHANGED
@@ -125,13 +125,13 @@ class AsyncDownloader(object):
|
|
125
125
|
except NotFound as e:
|
126
126
|
logging.warning("Not found error occurred!")
|
127
127
|
logging.exception(e)
|
128
|
+
self.send_message_to_admin(
|
129
|
+
f"Task `{job.job_id}` failed. URL: '{job.url}'. Reason: '**NotFound**'."
|
130
|
+
)
|
128
131
|
self.uploader.queue_task(job.to_upload_job(
|
129
132
|
job_failed=True,
|
130
133
|
job_failed_msg="Unable to access to media under this URL. Seems like the media is private.")
|
131
134
|
)
|
132
|
-
self.send_message_to_admin(
|
133
|
-
f"Task {job.job_id} failed. URL: '{job.url}'. Reason: 'NotFound'."
|
134
|
-
)
|
135
135
|
break
|
136
136
|
except Unavailable as e:
|
137
137
|
logging.warning("Not found or unavailable error occurred!")
|
@@ -150,24 +150,24 @@ class AsyncDownloader(object):
|
|
150
150
|
except TimeOut as e:
|
151
151
|
logging.warning("Timeout error occurred!")
|
152
152
|
logging.exception(e)
|
153
|
+
self.send_message_to_admin(
|
154
|
+
f"Task `{job.job_id}` failed. URL: '{job.url}'. Reason: '**TimeOut**'."
|
155
|
+
)
|
153
156
|
self.uploader.queue_task(job.to_upload_job(
|
154
157
|
job_failed=True,
|
155
158
|
job_failed_msg="Failed to download content due timeout error. Please check you Internet connection, retry amount or request timeout bot configuration settings.")
|
156
159
|
)
|
157
|
-
self.send_message_to_admin(
|
158
|
-
f"Task {job.job_id} failed. URL: '{job.url}'. Reason: 'TimeOut'."
|
159
|
-
)
|
160
160
|
break
|
161
161
|
except FileTooBig as e:
|
162
162
|
logging.warning("Telegram limits exceeded :(")
|
163
163
|
logging.exception(e)
|
164
|
+
self.send_message_to_admin(
|
165
|
+
f"Task `{job.job_id}` failed. URL: '{job.url}'. Reason: '**FileTooBig**'."
|
166
|
+
)
|
164
167
|
self.uploader.queue_task(job.to_upload_job(
|
165
168
|
job_failed=True,
|
166
169
|
job_failed_msg="Unfortunately this file has exceeded the Telegram limits. A file cannot be larger than 2 gigabytes.")
|
167
170
|
)
|
168
|
-
self.send_message_to_admin(
|
169
|
-
f"Task {job.job_id} failed. URL: '{job.url}'. Reason: 'FileTooBig'."
|
170
|
-
)
|
171
171
|
break
|
172
172
|
except IGRateLimitOccurred as e:
|
173
173
|
logging.warning("IG ratelimit occurred :(")
|
@@ -178,6 +178,10 @@ class AsyncDownloader(object):
|
|
178
178
|
except CaptchaIssue as e:
|
179
179
|
logging.warning("Challange occurred!")
|
180
180
|
logging.exception(e)
|
181
|
+
acc_index, acc_data = selector.get_current()
|
182
|
+
self.send_message_to_admin(
|
183
|
+
f"Captcha required for account #{acc_index}, login: '{acc_data.get('login', 'unknown')}'."
|
184
|
+
)
|
181
185
|
self.try_next_account(selector, job)
|
182
186
|
self.job_queue.put(job)
|
183
187
|
break
|
@@ -197,19 +201,19 @@ class AsyncDownloader(object):
|
|
197
201
|
job_failed_msg="Youtube Age Restricted error. Check your bot Youtube account settings.")
|
198
202
|
)
|
199
203
|
self.send_message_to_admin(
|
200
|
-
f"Task {job.job_id} failed. URL: '{job.url}'. Reason: 'YotubeAgeRestrictedError'."
|
204
|
+
f"Task `{job.job_id}` failed. URL: '{job.url}'. Reason: '**YotubeAgeRestrictedError**'."
|
201
205
|
)
|
202
206
|
break
|
203
207
|
except AllAccountsFailed as e:
|
204
208
|
logging.error("All accounts failed!")
|
205
209
|
logging.exception(e)
|
210
|
+
self.send_message_to_admin(
|
211
|
+
f"Task `{job.job_id}` failed. URL: '{job.url}'. Reason: '**AllAccountsFailed**'."
|
212
|
+
)
|
206
213
|
self.uploader.queue_task(job.to_upload_job(
|
207
214
|
job_failed=True,
|
208
215
|
job_failed_msg="All bot accounts failed to download content. Bot administrator noticed about the issue.")
|
209
216
|
)
|
210
|
-
self.send_message_to_admin(
|
211
|
-
f"Task {job.job_id} failed. URL: '{job.url}'. Reason: 'AllAccountsFailed'."
|
212
|
-
)
|
213
217
|
break
|
214
218
|
except (UnknownError, Exception) as e:
|
215
219
|
logging.warning("UnknownError occurred!")
|
@@ -221,27 +225,27 @@ class AsyncDownloader(object):
|
|
221
225
|
exception_msg = str(e)
|
222
226
|
if "geoblock_required" in exception_msg:
|
223
227
|
if job.geoblock_error_count > self.acc_selector.count_service_accounts(job.job_origin):
|
228
|
+
self.send_message_to_admin(
|
229
|
+
f"Task `{job.job_id}` failed. URL: '{job.url}'. Reason: '**geoblock_required**'."
|
230
|
+
)
|
224
231
|
self.uploader.queue_task(job.to_upload_job(
|
225
232
|
job_failed=True,
|
226
233
|
job_failed_msg="This content does not accessible for all yout bot accounts. Seems like author blocked certain regions.")
|
227
234
|
)
|
228
|
-
self.send_message_to_admin(
|
229
|
-
f"Task {job.job_id} failed. URL: '{job.url}'. Reason: 'geoblock_required'."
|
230
|
-
)
|
231
235
|
break
|
232
236
|
job.geoblock_error_count += 1
|
233
237
|
logging.info("Trying to switch account")
|
234
238
|
self.acc_selector.next()
|
235
239
|
self.job_queue.put(job)
|
236
240
|
break
|
241
|
+
self.send_message_to_admin(
|
242
|
+
f"Task `{job.job_id}` failed. URL: '{job.url}'. Reason: '**UnknownError**'."
|
243
|
+
f"Exception:\n```\n{exception_msg}\n```"
|
244
|
+
)
|
237
245
|
self.uploader.queue_task(job.to_upload_job(
|
238
246
|
job_failed=True,
|
239
247
|
job_failed_msg="WOW, unknown error occured! Please [create issue](https://github.com/sb0y/warp_beacon/issues) with service logs.")
|
240
248
|
)
|
241
|
-
self.send_message_to_admin(
|
242
|
-
f"Task {job.job_id} failed. URL: '{job.url}'. Reason: 'UnknownError'."
|
243
|
-
f"Exception:\n```\n{exception_msg}\n```"
|
244
|
-
)
|
245
249
|
break
|
246
250
|
|
247
251
|
if items:
|
@@ -3,7 +3,7 @@ lib/systemd/system/warp_beacon.service,sha256=lPmHqLqcI2eIV7nwHS0qcALQrznixqJuww
|
|
3
3
|
var/warp_beacon/accounts.json,sha256=rKFQM_b9eoDS4mJ1B_SZNolPLXx1SQdQMdY2F_ZcBt8,1523
|
4
4
|
var/warp_beacon/placeholder.gif,sha256=cE5CGJVaop4Sx21zx6j4AyoHU0ncmvQuS2o6hJfEH88,6064
|
5
5
|
warp_beacon/__init__.py,sha256=_rThNODmz0nDp_n4mWo_HKaNFE5jk1_7cRhHyYaencI,163
|
6
|
-
warp_beacon/__version__.py,sha256=
|
6
|
+
warp_beacon/__version__.py,sha256=5j3uHwSbszh78x6-PpDSiisJ6tRYR9nAOlv4L1PqQis,24
|
7
7
|
warp_beacon/warp_beacon.py,sha256=7KEtZDj-pdhtl6m-zFLsSojs1ZR4o7L0xbqtdmYPvfE,342
|
8
8
|
warp_beacon/compress/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
9
9
|
warp_beacon/compress/video.py,sha256=_PDMVYCyzLYxHv1uZmmzGcG_8rjaZr7BTXsXTTy_oS4,2846
|
@@ -18,8 +18,8 @@ warp_beacon/mediainfo/audio.py,sha256=ous88kwQj4bDIChN5wnGil5LqTs0IQHH0d-nyrL0-Z
|
|
18
18
|
warp_beacon/mediainfo/silencer.py,sha256=MgUc9Ibbhjhg9GbJMNfJqrdDkMsQShZkQ1sCwvW_-qI,1647
|
19
19
|
warp_beacon/mediainfo/video.py,sha256=DXHiWAOyJPSVXQ0OP7uOBikUFT7noFmMaMSIx04Mhs4,2506
|
20
20
|
warp_beacon/scheduler/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
21
|
-
warp_beacon/scheduler/scheduler.py,sha256=
|
22
|
-
warp_beacon/scraper/__init__.py,sha256=
|
21
|
+
warp_beacon/scheduler/scheduler.py,sha256=d_TxhIpL_4s0a8tgUO3xokkLYPx1CaHZdldbuIl90yI,2585
|
22
|
+
warp_beacon/scraper/__init__.py,sha256=tkl7UyfqFcvPlxomVPB9GpWQvAoADaM6jGb_bmx1zRY,15229
|
23
23
|
warp_beacon/scraper/abstract.py,sha256=aNZ9ypF9B8BjflcIwi-7wEzIqF-XPeF0xvfX9CP_iIw,2708
|
24
24
|
warp_beacon/scraper/account_selector.py,sha256=CmHNNeh8NuYQsysDB8Hmo0dWMEqZnRfTc8HO3iEHtbU,3167
|
25
25
|
warp_beacon/scraper/exceptions.py,sha256=lHsPrYy5iYnHsIdUHqRxZmzlqrkNj_TS4TkiTJfWhTs,1326
|
@@ -37,9 +37,9 @@ warp_beacon/telegram/handlers.py,sha256=xSNG_v4D4FaA5q1_5wXvJkjcDUhy5GaQnfpijJZp
|
|
37
37
|
warp_beacon/telegram/placeholder_message.py,sha256=32U-R_IMPRJd-S5UwlpemLkArJOxCmO7whcynduSbMA,6418
|
38
38
|
warp_beacon/telegram/utils.py,sha256=CeWXMwyzv2l4Af6I-wW2ySU490c-5k82sBhkjabv0n4,2452
|
39
39
|
warp_beacon/uploader/__init__.py,sha256=rsUkzzmtaeQY-kNkcIiPsrayS9idFKY3hBC71mR19XE,4743
|
40
|
-
warp_beacon-2.2.
|
41
|
-
warp_beacon-2.2.
|
42
|
-
warp_beacon-2.2.
|
43
|
-
warp_beacon-2.2.
|
44
|
-
warp_beacon-2.2.
|
45
|
-
warp_beacon-2.2.
|
40
|
+
warp_beacon-2.2.24.dist-info/LICENSE,sha256=xx0jnfkXJvxRnG63LTGOxlggYnIysveWIZ6H3PNdCrQ,11357
|
41
|
+
warp_beacon-2.2.24.dist-info/METADATA,sha256=w7KmHqfjMGQ79SSE5KICEn-plclCtsqrG5JIJ-9AUCg,21251
|
42
|
+
warp_beacon-2.2.24.dist-info/WHEEL,sha256=OVMc5UfuAQiSplgO0_WdW7vXVGAt9Hdd6qtN4HotdyA,91
|
43
|
+
warp_beacon-2.2.24.dist-info/entry_points.txt,sha256=eSB61Rb89d56WY0O-vEIQwkn18J-4CMrJcLA_R_8h3g,119
|
44
|
+
warp_beacon-2.2.24.dist-info/top_level.txt,sha256=ALb_Ft_eG-OY4_m0TWUifNUOZsrx483L-zw7G7vqXoc,971
|
45
|
+
warp_beacon-2.2.24.dist-info/RECORD,,
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|