Advertisement
memchik

Bot_1

Jan 28th, 2019
160
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 6.53 KB | None | 0 0
  1. import telebot
  2. import sqlite3
  3. from telebot.types import Message
  4. from telebot import types
  5. import requests
  6. import vk
  7.  
  8. token = '675993749:AAGyHVZYo23ZKx0Y2p4ojCj40fK9gIRTrEQ'
  9.  
  10. bot = telebot.TeleBot(token)
  11.  
  12.  
  13. #Start
  14. @bot.message_handler(commands=["start"])
  15. def start(message):
  16.     bot.send_message(message.chat.id,"Привет, "+str(message.from_user.username)+"!\n")
  17.     keyboard = types.InlineKeyboardMarkup()
  18.     yes_btn = types.InlineKeyboardButton(text="Да", callback_data="YES")
  19.     no_btn = types.InlineKeyboardButton(text="Нет", callback_data="NO")
  20.     keyboard.add(yes_btn, no_btn)
  21.     bot.send_message(message.chat.id,'Наш бот умеет накручивать лайки ВКонтакте.\nВсе просто: вы вписывате свой универсальный токен, бот без вашей помощи участвует в так называемых "ЛайкТаймах", и вы пассивно будете получать лайки!\nВызовите команду /vk и следуйте инструкциям.')
  22. #Help,info
  23. @bot.message_handler(commands = ['help'])
  24. def help(message):
  25.     bot.send_message(message.chat.id,'Вот все команды что есть')
  26. #Connect
  27. @bot.message_handler(commands = ['vk'])
  28. def vk_info(message):
  29.   conn = sqlite3.connect("base.sqlite")
  30.   cursor = conn.cursor()
  31.   cursor.execute(f"SELECT * FROM base WHERE user_id ={message.chat.id}")
  32.   len_data=len(cursor.fetchall())
  33.   cursor.close()
  34.   conn.close()
  35.   if len_data==1:
  36.     bot.send_message(message.chat.id,"Ты уже подключен")
  37.   else:
  38.     keyboard = types.InlineKeyboardMarkup()
  39.     yes_btn = types.InlineKeyboardButton(text="Да", callback_data="YES")
  40.     no_btn = types.InlineKeyboardButton(text="Нет", callback_data="NO")
  41.     keyboard.add(yes_btn, no_btn)
  42.     bot.send_message(message.chat.id,'Вы хотите подключить накрутку лайков?' , reply_markup = keyboard)
  43. #Disconnect
  44. @bot.message_handler(commands = ["vk_off"])
  45. def vk_off(message):
  46.   conn = sqlite3.connect("base.sqlite")
  47.   cursor = conn.cursor()
  48.   cursor.execute("SELECT * FROM base WHERE user_id = ?", (message.chat.id,))
  49.   len_data=len(cursor.fetchall())
  50.   cursor.close()
  51.   conn.close()
  52.   if len_data==0:
  53.     bot.send_message(message.chat.id, 'Вы не подключены, чтобы я вас отключал!\nВы можете подключиться с помощью команды /vk')
  54.   else:
  55.     keyboard_1 = types.InlineKeyboardMarkup()
  56.     vk_off_yes = types.InlineKeyboardButton(text="Да", callback_data="yes")
  57.     vk_off_no = types.InlineKeyboardButton(text="Нет", callback_data="no")
  58.     keyboard_1.add(vk_off_yes, vk_off_no)
  59.     bot.send_message(message.chat.id,"Хотите чтобы я вас отключил?" , reply_markup = keyboard_1)
  60. #Markups
  61. @bot.callback_query_handler(func=lambda call: True)
  62. def yes_no(call):
  63.   if call.data=="YES":
  64.     link_btn = types.InlineKeyboardButton(text = 'Ссылка' , url='https://oauth.vk.com/authorize?client_id=6807462&scope=1073741823&redirect_uri=https://api.vk.com/blank.html&display=page&response_type=token&revoke=1')
  65.     keyboard_link = types.InlineKeyboardMarkup()
  66.     keyboard_link.add(link_btn)
  67.     token_question = bot.send_message(call.message.chat.id,'Хорошо,вот вам ссылка.\nПерейдите по ней, нажмите "Разрешить", затем скопируйте ссылку и отправте нам',reply_markup = keyboard_link)
  68.     bot.register_next_step_handler(token_question, connect_token)
  69.     bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text = 'Вы хотите подключить накрутку лайков?')
  70.   elif call.data=="NO":
  71.     bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text = 'Вы хотите подключить накрутку лайков?')
  72.     bot.send_message(call.message.chat.id,'Хорошо, мы подождем когда вы будете согласны 😌')
  73.   elif call.data=="yes":
  74.     conn = sqlite3.connect("base.sqlite")
  75.     cursor = conn.cursor()
  76.     cursor.execute("SELECT * FROM base WHERE user_id = ?", (call.message.chat.id,))
  77.     len_data=len(cursor.fetchall())
  78.     cursor.close()
  79.     conn.close()
  80.     if len_data==0:
  81.       bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text = "Ты не подключен.")
  82.     else:
  83.       bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text = 'Хотите чтобы я вас отключил?')
  84.       bot.send_message(call.message.chat.id, 'Хорошо, я вас отключил')
  85.       conn = sqlite3.connect('base.sqlite')
  86.       cursor = conn.cursor()
  87.       cursor.execute(f"DELETE FROM base WHERE user_id ={call.message.chat.id}")
  88.       conn.commit()
  89.       cursor.close()
  90.       conn.close()
  91.   elif call.data=="no":
  92.     bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text = 'Спасибо, что остаетесь с нами')
  93. #Valid token,end
  94. def connect_token(message):
  95.   if message.content_type=="text":
  96.     token_user_0 = message.text.find('=')
  97.     token_user_1 = message.text.find('&')
  98.     token_user = message.text[token_user_0+1:token_user_1]
  99.     session = vk.Session(access_token='0f4d3592d4428146fd409c2f3160e121c9ac9433840ce38f5e3d66a63b31ab29abf0a201003989d3d4e09')
  100.     vk_api = vk.API(session, v='6')
  101.     rq=vk_api.users.get()
  102.     if rq[0]['id']!=None:
  103.       bot.send_message(message.chat.id, "Мои поздравления, все получилось!\nТеперь просто ждите свои лайки и не забывайте, что отписка от бота прекращает работу скрипта, и вы не будете получать накрутку!\nТакже вы можете отписаться самостоятельно, просто вписав /vk_off")
  104.       conn = sqlite3.connect("base.sqlite")
  105.       cursor = conn.cursor()
  106.       cursor.execute("INSERT INTO base VALUES (?,?)" , [message.from_user.id , token_user])
  107.       conn.commit()
  108.       cursor.close()
  109.       conn.close()
  110.     else:
  111.       bot.send_message(message.chat.id , "Вы неправильно указали токен,попробуйте снова!\nВызовите команду /vk заново!")
  112.   else:
  113.     bot.send_message(message.chat.id , "Это не токен, вызовите команду /vk заново!")
  114.  
  115. bot.polling()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement