fix: retry login after 401 rate limit (wait 60s)
This commit is contained in:
@@ -143,6 +143,21 @@ class InstagramMonitor:
|
|||||||
logger.info("Login verified via followees endpoint")
|
logger.info("Login verified via followees endpoint")
|
||||||
self._logged_in = True
|
self._logged_in = True
|
||||||
return True
|
return True
|
||||||
|
elif resp.status_code == 401:
|
||||||
|
logger.warning("Rate limited by Instagram, waiting 60s...")
|
||||||
|
time.sleep(60)
|
||||||
|
# Retry once
|
||||||
|
resp = self.session.get(
|
||||||
|
f"{API_BASE}/friendships/{ds_user_id}/following/",
|
||||||
|
params={"count": 1},
|
||||||
|
timeout=30,
|
||||||
|
)
|
||||||
|
if resp.status_code == 200:
|
||||||
|
logger.info("Login verified after retry")
|
||||||
|
self._logged_in = True
|
||||||
|
return True
|
||||||
|
logger.error(f"Login check still failed after retry: {resp.status_code}")
|
||||||
|
return False
|
||||||
else:
|
else:
|
||||||
logger.error(f"Login check failed: {resp.status_code} {resp.text[:200]}")
|
logger.error(f"Login check failed: {resp.status_code} {resp.text[:200]}")
|
||||||
return False
|
return False
|
||||||
|
|||||||
Reference in New Issue
Block a user