bot.py 961 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. #!/usr/bin/env python3.7
  2. import queue
  3. import shlex
  4. import sys
  5. from ircclient import IRCClient, MODE_SEARCH, MODE_BOOK
  6. def usage():
  7. print("USAGE:")
  8. print("\t SEARCH <BOOK> <FORMAT>")
  9. print("\t BOOK <BOT COMMAND>")
  10. def main():
  11. q = queue.Queue()
  12. client = IRCClient(q)
  13. client.start()
  14. for line in sys.stdin:
  15. line = line.strip().lower()
  16. try:
  17. split = shlex.split(line)
  18. except Exception as e:
  19. print(e)
  20. continue
  21. if len(split) < 2 or len(split) > 3 or split[0].lower() not in [MODE_SEARCH, MODE_BOOK]:
  22. usage()
  23. continue
  24. mode = split[0]
  25. query = split[1]
  26. grep = ""
  27. if len(split) == 3:
  28. grep = split[2]
  29. data = {'query': query, 'mode': mode, 'grep': grep}
  30. q.put(data)
  31. client.join()
  32. if __name__ == "__main__":
  33. try:
  34. main()
  35. except KeyboardInterrupt:
  36. print("\nBye")