- Сообщения
- 322
- Реакции
- 718
- Продажи
- 3
- Кешбек
- 1.25$
Добро пожаловать. Демонстрирую вам простой исходник бота автопродаж для скама(или ручной продажи через оператора). Разумеется реальные боты имеют больший обьем кода, базу данных, и реализованные сервисы оплат. Но может кому будет полезно.
Ставим библиотеку telebot. Вписываем токен вашего бота вверху скрипта и тестим.
Ставим библиотеку telebot. Вписываем токен вашего бота вверху скрипта и тестим.
Python:
import telebot
tovary_k = telebot.types.InlineKeyboardMarkup(row_width=1)
token = ''
KARTA = 'Оператор @'
QIWI = '+7 (975) 732-21-43'
tovary = [{"name": "Альфа-ПВП 0,3г", "price": 1450, 'id': "alfa1"},
{"name": "Альфа-ПВП 0,5г", "price": 1750, "id": "alfa2"},
{"name": "Альфа-ПВП 1г", "price": 2150, 'id': "alfa3"},
{"name": "Альфа-ПВП 2г", "price": 3600, 'id': "alfa4"},
{"name": "МЕФ - КРИСТАЛЫ 1г", "price": 2250, "id": "meph1"},
{"name": "МЕФ - КРИСТАЛЫ 2г", "price": 4500, 'id': "meph2"},
{"name": "МЕФ - КРИСТАЛЫ 3г", "price": 6000, 'id': "meph3"},
{"name": "МЕФ - МУКА 1г", "price": 1650, "id": "muka1"},
{"name": "МЕФ - МУКА 2г", "price": 3200, 'id': "muka2"},
{"name": "МЕФ - МУКА 3г", "price": 4500, 'id': "muka3"},
{"name": "ГАШ 1г", "price": 1700, "id": "gas1"},
{"name": "ГАШ 1,5г", "price": 2250, 'id': "gas15"},
{"name": "БОШКИ 1г", "price": 2400, 'id': "bosh1"},
{"name": "БОШКИ 2г", "price": 3950, "id": "bosh2"},
{"name": "ЛИРИКА", "price": 300, 'id': "lirika"},
]
goroda = [{"name": "Ростов-на-Дону", 'id': "rostov"}, {"name": "Батайск","id": "batay"},
{"name": "Шахты","id": "shaxti"},{"name": "Таганрог","id": "taganrog"},
{"name": "Красный-Сулин","id": "krasniy"},{"name": "Гуково","id": "guckovo"},
{"name": "Волгодонск","id": "volga"},{"name": "Каменск-Шахтинский","id": "kamensk"},
{"name": "Сальск","id": "cherkaskk"},{"name": "Новочеркасск","id": "cherkaskk"},
{"name": "Белая Калитва","id": "kalitva"}]
rayoni = [{"name": "Район1", 'id': "1"}, {"name": "Район2","id": "2"}]
oplati = [{"name": "Qiwi", 'kuda':QIWI ,'id': "qiwi"}, {"name": "Карта", 'kuda':"Временно не работает. Только у оператор", "id": "card"}]
vse_id_tovarov = []
vse_id_goroda = []
vse_id_oplati = []
vse_id_rayonov = []
bot = telebot.TeleBot(token)
@bot.message_handler(func=lambda message: True)
def start(message):
if message.text == '/start':
try:
del tovary_k
except:
pass
tovary_k = telebot.types.InlineKeyboardMarkup(row_width=1)
for i in goroda:
tovary_k.add(telebot.types.InlineKeyboardButton(text=f"Город - {i['name']}", callback_data=i["id"]))
vse_id_goroda.append(i["id"])
bot.send_message(message.chat.id, 'Добро пожаловать! Выберите город:', reply_markup=tovary_k)
@bot.callback_query_handler(func=lambda call:True)
def menu(call):
if call.data in vse_id_rayonov:
for i in rayoni:
if i["id"] == call.data:
bot.send_message(call.message.chat.id, f'Вы выбрали район {i["name"]} ')
try:
del tovary_k
except:
pass
tovary_k = telebot.types.InlineKeyboardMarkup(row_width=1)
for i in tovary:
tovary_k.add(telebot.types.InlineKeyboardButton(text=f"{i['name']} - {i['price']} руб.", callback_data=i["id"]))
vse_id_tovarov.append(i["id"])
bot.send_message(call.message.chat.id, 'Выберите товар:', reply_markup=tovary_k)
elif call.data in vse_id_tovarov:
for i in tovary:
if i["id"] == call.data:
bot.send_message(call.message.chat.id, f'Вы выбрали {i["name"]} за {i["price"]} руб.')
try:
del tovary_k
except:
pass
tovary_k = telebot.types.InlineKeyboardMarkup(row_width=1)
for i in oplati:
tovary_k.add(telebot.types.InlineKeyboardButton(text=f"{i['name']}", callback_data=i["id"]))
vse_id_oplati.append(i["id"])
bot.send_message(call.message.chat.id, 'Выберите способ оплаты:', reply_markup=tovary_k)
elif call.data in vse_id_goroda:
for i in goroda:
if i["id"] == call.data:
bot.send_message(call.message.chat.id, f'Вы выбрали город {i["name"]}')
try:
del tovary_k
except:
pass
tovary_k = telebot.types.InlineKeyboardMarkup(row_width=1)
for i in rayoni:
tovary_k.add(telebot.types.InlineKeyboardButton(text=f"{i['name']}", callback_data=i["id"]))
vse_id_rayonov.append(i["id"])
bot.send_message(call.message.chat.id, 'Выберите район:', reply_markup=tovary_k)
else:
if call.data in vse_id_oplati:
for i in oplati:
if i["id"] == call.data:
bot.send_message(call.message.chat.id, f'Вы выбрали {i["name"]} способ оплаты. Отправьте выбранную точную сумму товара на - {i["kuda"]} в течении 15 минут. Если отправите позже пишите оператору для ручной выдачи заказа')
break
bot.polling(none_stop=False)