Добавлено сообщение об ошибке 401 AUTH_KEY_UNREGISTERED
This commit is contained in:
@ -1,6 +1,6 @@
|
||||
# Информация о программе
|
||||
__author__ = 'Alexander Popov'
|
||||
__version__ = (2, 2, 3)
|
||||
__version__ = (2, 2, 4)
|
||||
|
||||
# Импорт модулей стандартной библиотеки
|
||||
from os import getenv
|
||||
|
@ -1,6 +1,10 @@
|
||||
# Импорт модулей стандартной библиотеки
|
||||
import time
|
||||
|
||||
# Импорт сторонних модулей
|
||||
from pyrogram.errors import exceptions
|
||||
from rich import print as rich_print
|
||||
|
||||
# Импорт модулей приложения
|
||||
from . import __version__, client, db, logger, DELAY_TIME
|
||||
from .actions import get_top_wins, get_top_donates
|
||||
@ -42,6 +46,9 @@ if __name__ == '__main__':
|
||||
|
||||
try:
|
||||
client.run(main())
|
||||
except exceptions.unauthorized_401.AuthKeyUnregistered:
|
||||
rich_print('Ошибка Telegram: [bold red][401 AUTH_KEY_UNREGISTERED][/bold red]')
|
||||
rich_print('Удалите файлы авторизации [bold green]Pyrogram[/bold green]:'' [italic yellow]*.session, *.session-journal[/italic yellow]')
|
||||
except KeyboardInterrupt:
|
||||
pass
|
||||
|
||||
|
@ -7,7 +7,7 @@ from .collect import parse_wins_top, parse_donates_top
|
||||
|
||||
|
||||
async def get_top_wins() -> None:
|
||||
"""Получает топ клана по победам"""
|
||||
"""⚔️ Получает топ клана по победам"""
|
||||
logger.info('Выполняется получения списка побед клана')
|
||||
|
||||
await client.send_message(BOT_NAME, '🛡 Мой клан')
|
||||
@ -22,7 +22,7 @@ async def get_top_wins() -> None:
|
||||
message_id=message_id,
|
||||
callback_data='my_clan:tops:91:0:0:0:0:1',
|
||||
)
|
||||
time.sleep(1)
|
||||
time.sleep(2)
|
||||
|
||||
async for message in client.get_chat_history(BOT_NAME, limit=1):
|
||||
message_id = message.id
|
||||
@ -32,22 +32,22 @@ async def get_top_wins() -> None:
|
||||
message_id=message_id,
|
||||
callback_data='my_clan:top-wins:91:0:0:0:0:1',
|
||||
)
|
||||
time.sleep(1)
|
||||
time.sleep(2)
|
||||
|
||||
async for message in client.get_chat_history(BOT_NAME, limit=1):
|
||||
await parse_wins_top(message)
|
||||
|
||||
await client.read_chat_history(BOT_NAME)
|
||||
await client.read_chat_history(BOT_NAME) # Помечает сообщения в чате прочитанными
|
||||
|
||||
logger.info('Получение списка побед клана завершено')
|
||||
|
||||
|
||||
async def get_top_donates() -> None:
|
||||
"""Получает топ клана по пожертвованиям"""
|
||||
"""💠 Получает топ клана по пожертвованиям"""
|
||||
logger.info('Выполняется получения списка пожертвований клана')
|
||||
|
||||
await client.send_message(BOT_NAME, '🛡 Мой клан')
|
||||
time.sleep(1)
|
||||
time.sleep(2)
|
||||
|
||||
message_id = 0
|
||||
async for message in client.get_chat_history(BOT_NAME, limit=1):
|
||||
@ -58,7 +58,7 @@ async def get_top_donates() -> None:
|
||||
message_id=message_id,
|
||||
callback_data='my_clan:tops:91:0:0:0:0:1',
|
||||
)
|
||||
time.sleep(1)
|
||||
time.sleep(2)
|
||||
|
||||
async for message in client.get_chat_history(BOT_NAME, limit=1):
|
||||
message_id = message.id
|
||||
@ -73,6 +73,6 @@ async def get_top_donates() -> None:
|
||||
async for message in client.get_chat_history(BOT_NAME, limit=1):
|
||||
await parse_donates_top(message)
|
||||
|
||||
await client.read_chat_history(BOT_NAME)
|
||||
await client.read_chat_history(BOT_NAME) # Помечает сообщения в чате прочитанными
|
||||
|
||||
logger.info('Получение списка пожертвований клана завершено')
|
||||
|
@ -11,7 +11,7 @@ from .utils import get_telegram_id, get_telegram_data, clean_icons
|
||||
|
||||
|
||||
async def parse_wins_top(message: Message) -> None:
|
||||
"""Выполняет парсинг данных топа побед членов клана"""
|
||||
"""⚔️ Выполняет парсинг данных топа побед членов клана"""
|
||||
if message.text.startswith('🏆 Топ по победам'):
|
||||
players = message.text.split('\n')
|
||||
players.pop(0)
|
||||
@ -45,7 +45,7 @@ async def parse_wins_top(message: Message) -> None:
|
||||
|
||||
|
||||
async def parse_donates_top(message: Message) -> None:
|
||||
"""Выполняет парсинг данных топа пожертвований членов клана"""
|
||||
"""💠 Выполняет парсинг данных топа пожертвований членов клана"""
|
||||
if message.text.startswith('🏆 Топ по пожертвованиям'):
|
||||
players = message.text.split('\n')
|
||||
|
||||
|
@ -23,13 +23,27 @@ class DataBase(object):
|
||||
|
||||
def connect(self) -> bool:
|
||||
"""Выполняет подключение к базе данных"""
|
||||
self.conn = psycopg2.connect(
|
||||
dbname=self.name,
|
||||
host=self.host,
|
||||
user=self.user,
|
||||
password=self.password,
|
||||
port=self.port,
|
||||
)
|
||||
|
||||
connection_kwargs = {
|
||||
"host": self.host,
|
||||
"port": self.port,
|
||||
"user": self.user,
|
||||
"password": self.password,
|
||||
"database": self.name,
|
||||
}
|
||||
"""Настройки соединения"""
|
||||
|
||||
keepalive_kwargs = {
|
||||
"keepalives": 1,
|
||||
"keepalives_idle": 5,
|
||||
"keepalives_interval": 5,
|
||||
"keepalives_count": 2,
|
||||
"tcp_user_timeout": 1000,
|
||||
}
|
||||
"""Настройки TCP"""
|
||||
|
||||
|
||||
self.conn = psycopg2.connect(**connection_kwargs, **keepalive_kwargs) # Выполняет подключение к базе данных
|
||||
self.conn.autocommit = True # Активирует автоматический коммит транзакций
|
||||
|
||||
return True
|
||||
@ -39,12 +53,23 @@ class DataBase(object):
|
||||
self.conn.close()
|
||||
return True
|
||||
|
||||
def check_connect(self) -> None:
|
||||
"""Проверяет статус подключения"""
|
||||
try:
|
||||
cur = self.conn.cursor()
|
||||
cur.execute('SELECT 1')
|
||||
cur.close()
|
||||
|
||||
return True
|
||||
except Exception as e:
|
||||
return False
|
||||
|
||||
def commit(self) -> None:
|
||||
"""Выполняет коммит"""
|
||||
self.conn.commit()
|
||||
return True
|
||||
|
||||
def add_data(self, data, wins: bool) -> bool: # wins изменит на Enum
|
||||
def add_data(self, data, wins: bool) -> bool: # wins изменить на Enum
|
||||
"""Добавляет данные в базу данных"""
|
||||
if wins:
|
||||
table = 'wins'
|
||||
|
@ -6,7 +6,7 @@ from . import client
|
||||
|
||||
|
||||
async def get_telegram_id(username: str) -> int:
|
||||
"""Возвращает Telegram ID"""
|
||||
"""🆔 Возвращает Telegram ID"""
|
||||
|
||||
try:
|
||||
telegram_user = await client.get_users(username)
|
||||
@ -17,6 +17,7 @@ async def get_telegram_id(username: str) -> int:
|
||||
|
||||
async def get_telegram_data(message: Message, idx: int) -> tuple():
|
||||
"""..."""
|
||||
|
||||
if message.entities[idx].type == MessageEntityType.TEXT_LINK:
|
||||
player_url = message.entities[idx].url
|
||||
player_telegram_id = await get_telegram_id(player_url.replace('http://t.me/', ''))
|
||||
|
@ -11,3 +11,7 @@ include_toc: true
|
||||
* 🟢 – Добавлено
|
||||
* 🔴 – Удалёно
|
||||
* ♻️ – Исправлено
|
||||
|
||||
## 2.2.4
|
||||
|
||||
* Добавлено сообщение об ошибке **401** `AUTH_KEY_UNREGISTERED`
|
||||
|
@ -1,5 +1,7 @@
|
||||
loguru==0.7.2
|
||||
psycopg2==2.9.10
|
||||
Pyrogram==2.0.106
|
||||
python-dotenv==1.0.1
|
||||
rich==14.0.0
|
||||
TgCrypto==1.2.5
|
||||
psycopg2==2.9.10
|
||||
zstandard==0.23.0
|
||||
|
Reference in New Issue
Block a user