удаление ссылки пользователя после получения видео
This commit is contained in:
parent
a5d56fc3be
commit
5d597d199f
2 changed files with 37 additions and 13 deletions
38
bot.py
38
bot.py
|
|
@ -400,7 +400,10 @@ def check_instagram_cookies_expiry() -> tuple[bool, int]:
|
|||
|
||||
try:
|
||||
current_time = time.time()
|
||||
min_expiry = None
|
||||
valid_expiries = []
|
||||
|
||||
# Важные cookies для Instagram (проверяем их в первую очередь)
|
||||
important_cookies = ['sessionid', 'csrftoken', 'ds_user_id']
|
||||
|
||||
with open(cookies_file_path, 'r') as f:
|
||||
for line in f:
|
||||
|
|
@ -413,21 +416,36 @@ def check_instagram_cookies_expiry() -> tuple[bool, int]:
|
|||
if 'instagram' in domain.lower():
|
||||
try:
|
||||
expiry = int(parts[4]) # Unix timestamp
|
||||
if min_expiry is None or expiry < min_expiry:
|
||||
min_expiry = expiry
|
||||
cookie_name = parts[5] if len(parts) > 5 else ''
|
||||
|
||||
# Игнорируем невалидные expiry (0, отрицательные, или слишком старые)
|
||||
# Session cookies (expiry = 0) также игнорируем для проверки срока
|
||||
if expiry > 0 and expiry > 946684800: # Фильтр: после 2000-01-01 (избегаем epoch 0)
|
||||
# Для важных cookies проверяем строже
|
||||
if cookie_name in important_cookies:
|
||||
if expiry > current_time:
|
||||
valid_expiries.append(expiry)
|
||||
else:
|
||||
valid_expiries.append(expiry)
|
||||
except (ValueError, IndexError):
|
||||
continue
|
||||
|
||||
if min_expiry is None:
|
||||
return False, 0
|
||||
if not valid_expiries:
|
||||
logger.warning("Не найдено валидных Instagram cookies с нормальным сроком действия")
|
||||
# Если нет валидных expiry, но есть cookies - считаем их действительными
|
||||
# (возможно, это session cookies)
|
||||
return True, 30 # Возвращаем разумное значение по умолчанию
|
||||
|
||||
# Берем минимальный валидный expiry
|
||||
min_expiry = min(valid_expiries)
|
||||
days_until_expiry = (min_expiry - current_time) / 86400
|
||||
is_valid = min_expiry > current_time
|
||||
|
||||
return is_valid, int(days_until_expiry)
|
||||
except Exception as e:
|
||||
logger.error(f"Ошибка при проверке срока действия cookies: {e}")
|
||||
return False, 0
|
||||
# В случае ошибки считаем cookies действительными (не блокируем работу)
|
||||
return True, 30
|
||||
|
||||
|
||||
async def keep_instagram_session_alive():
|
||||
|
|
@ -680,7 +698,13 @@ async def handle_message(update: Update, context: ContextTypes.DEFAULT_TYPE):
|
|||
except Exception as e:
|
||||
logger.warning(f"Не удалось удалить файл {video_path}: {e}")
|
||||
|
||||
await status_message.delete()
|
||||
# Удаляем сообщение со ссылкой и статусное сообщение
|
||||
try:
|
||||
await status_message.delete()
|
||||
await update.message.delete()
|
||||
logger.info(f"Удалено сообщение пользователя с ссылкой (chat_id: {chat_id})")
|
||||
except Exception as e:
|
||||
logger.warning(f"Не удалось удалить сообщение: {e}")
|
||||
|
||||
except Exception as e:
|
||||
logger.error(f"Ошибка: {e}")
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue