Advertisement
Guest User

Bot

a guest
Oct 15th, 2019
169
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.89 KB | None | 0 0
  1. def main():
  2. import random
  3. import pandas as pd
  4. import numpy as np
  5. import discord
  6. import asyncio
  7.  
  8. import configparser
  9. from sqlalchemy import create_engine
  10. import MySQLdb
  11. import sqlite3
  12.  
  13. config = configparser.ConfigParser()
  14. config.read("F:/Pythonki/etc/config.txt")
  15. password = config.get("config","password")
  16. username = config.get("config","user")
  17. port = config.get("config","port")
  18. host = config.get("config","host")
  19. engine = create_engine('mysql+mysqldb://'+username+':'+password+'@'+host+':'+port+'/test', echo = False)
  20.  
  21. dbLen = pd.read_sql('SELECT * FROM memes ORDER BY ID DESC LIMIT 1', con=engine)['ID'].values[0]
  22. TOKEN = 'NjMyOTg4Mjc2MDU5NDA2NDE1.XaNotg.jKbp9OZWHbQrocLtK5hUx0DItvA'
  23.  
  24. client = discord.Client()
  25.  
  26. @client.event
  27. async def on_message(message):
  28.  
  29. if message.author == client.user:
  30. return
  31.  
  32. @client.event
  33. async def on_reaction_add(reaction, user):
  34. await message.channel.send('Thank you for reacting, {0.author.mention}!'.format(message))
  35.  
  36. def randomize_meme():
  37. i = random.randrange(0,dbLen)
  38. meme = pd.read_sql("SELECT * FROM memes WHERE ID ="+str(i), con=engine)
  39.  
  40. return meme['url'].values[0]
  41.  
  42.  
  43. if message.content.startswith('!facts'):
  44. if len(message.content.split()) < 2:
  45. msg_user = 'Please add one of the following persons: piotr/natalka/pawel.'
  46. elif message.content.split()[1] == 'piotr':
  47. msg_user = 'To my best knowledge, Piotr is a smol aplo.'
  48. elif message.content.split()[1] == 'natalka':
  49. msg_user = 'As far as my knowledge goes, this user is an ordinary duck.'
  50. elif message.content.split()[1] == 'pawel':
  51. msg_user = "From what I heard, this user doesn't listen to hip-hop."
  52. else:
  53. msg_user = 'Currently, I posses information about pawel, natalka and piotr only.'
  54. await message.channel.send(msg_user)
  55.  
  56.  
  57. if message.content.startswith('!meme'):
  58.  
  59. msg = ('I live to bring you the freshest memes \n ' + randomize_meme()).format(message)
  60. await message.channel.send(msg)
  61.  
  62. if message.content.startswith('?meme'):
  63.  
  64. msg = 'Yes, that is right - currently there are ' + str(dbLen) + ' memes in my database. Type !meme to generate a random meme.'.format(message)
  65. await message.channel.send(msg)
  66.  
  67. if message.content.startswith('!hello'):
  68.  
  69. hello = 'Hello, {0.author.mention}'.format(message)
  70. await message.channel.send(hello)
  71.  
  72. @client.event
  73. async def on_ready():
  74. print('Logged in as')
  75. print(client.user.name)
  76. print(client.user.id)
  77. print('------')
  78.  
  79. client.run(TOKEN)
  80.  
  81. if __name__== "__main__":
  82. main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement