Проблема запускаю бота появляется такая ошибка, а что в токене и канал айди пустой я специально удалил здесь оно не пустое!
import asyncio
import logging
from aiogram import Bot, Dispatcher, types
from aiogram.types import Message
from aiogram.filters import Command
from aiogram.enums import ParseMode
TOKEN = ""
CHANNEL_ID = "@="
ADMIN_ID = 1111111
bot = Bot(token=TOKEN, parse_mode=ParseMode.HTML)
dp = Dispatcher()
# Функция проверки подписки
async def check_subscription(user_id):
try:
chat_member = await bot.get_chat_member(CHANNEL_ID, user_id)
return chat_member.status in ["member", "administrator", "creator"]
except:
return False
# Команда /start
@dp.message(Command("start"))
async def start_cmd(message: Message):
text = (
f"Привет, {message.from_user.full_name}! \n\n"
"Меня зовут "", и я специалист по недвижимости! \n"
"Подписывайтесь на мой канал, чтобы получить полезную информацию!\n\n"
"✅ <b>Что вы получите от сотрудничества со мной?</b>\n"
"• Квартиру мечты – у меня обновляется список квартир каждый день!\n"
"• Безопасную и выгодную сделку без рисков.\n"
"• Экономию времени и нервов – все хлопоты беру на себя.\n"
"• Максимальную выгоду от продажи или сдачи вашей недвижимости.\n\n"
" <b>Как я работаю?</b>\n"
"• Выясняю ваши цели и желания (оффлайн или онлайн консультация).\n"
"• Анализирую рынок, цены и конкуренцию.\n"
"• Создаю стратегию поиска или продажи объекта.\n"
"• Продвигаю недвижимость, чтобы достичь сделки.\n"
"• Отчитываюсь о проделанной работе и дальнейших действиях.\n\n"
"⏳ <b>Сроки выполнения</b>\n"
"Нужна недвижимость срочно? Я готова помочь в кратчайшие сроки!\n\n"
" <b>Гарантии</b>\n"
"Официальный договор и оплата только по факту сделки.\n\n"
" <b>ЖМИТЕ кнопку ниже</b>, и я БЕСПЛАТНО проанализирую рыночную стоимость вашей квартиры!\n\n"
"Чтобы записаться на бесплатную консультацию, подпишитесь на мой канал:"
)
keyboard = types.InlineKeyboardMarkup()
btn_subscribe = types.InlineKeyboardButton("✅ Подписаться", url=f"https://t.me/{CHANNEL_ID.lstrip('@')}")
btn_check = types.InlineKeyboardButton(" Проверить подписку", callback_data="check_sub")
keyboard.add(btn_subscribe)
keyboard.add(btn_check)
await message.answer(text, reply_markup=keyboard)
# Проверка подписки
@dp.callback_query(lambda c: c.data == "check_sub")
async def check_sub(callback_query: types.CallbackQuery):
user_id = callback_query.from_user.id
user_name = callback_query.from_user.full_name
if await check_subscription(user_id):
# Отправка уведомления тебе
await bot.send_message(ADMIN_ID, f" Новый подписчик!\n {user_name} записался на консультацию.")
await callback_query.message.answer("✅ Спасибо за подписку! Вы записаны на бесплатную консультацию. Я свяжусь с вами в ближайшее время!")
else:
await callback_query.message.answer("❌ Вы еще не подписаны! Подпишитесь и нажмите кнопку ещё раз.")
# Запуск бота
async def main():
logging.basicConfig(level=logging.INFO)
await dp.start_polling(bot)
if __name__ == "__main__":
asyncio.run(main())
А ошибка вот эта
Traceback (most recent call last):
File "d:/Программирование/bot.py", line 12, in <module>
bot = Bot(token=TOKEN, parse_mode=ParseMode.HTML)
File "C:\Users\днс\AppData\Local\Programs\Python\Python38\lib\site-packages\aiogram\client\bot.py", line 304, in __init__
raise TypeError(
TypeError: Passing `parse_mode`, `disable_web_page_preview` or `protect_content` to Bot initializer is not supported anymore. These arguments have been removed in 3.7.0 version. Use `default=DefaultBotProperties(parse_mode=<ParseMode.HTML: 'HTML'>)` argument instead.