shortener.py 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637
  1. #Shortener module created by hlmtre#
  2. import sys
  3. import requests
  4. import re
  5. from event import Event
  6. try:
  7. if sys.version_info > (3, 0, 0):
  8. from .basemodule import BaseModule
  9. else:
  10. from basemodule import BaseModule
  11. except (ImportError, SystemError):
  12. from modules.basemodule import BaseModule
  13. class Shortener(BaseModule):
  14. def post_init(self):
  15. shortener = Event("__urls__")
  16. shortener.define(msg_definition = "https?://[\S]+") # What to look for to trigger event
  17. shortener.subscribe(self)
  18. # register ourself to our new custom event
  19. self.bot.register_event(shortener, self)
  20. def handle(self, event):
  21. try:
  22. target = re.search("https?://[\S]+", event.line).group(0)
  23. if len(target) > 60:
  24. url = 'https://is.gd/create.php'
  25. payload = {'format':'simple', 'url':target}
  26. r = requests.get(url, params=payload)
  27. self.say(event.channel, r.text)
  28. except requests.exceptions.HTTPError as e:
  29. self.bot.debug_print("HTTPError")
  30. self.bot.debug_print(str(e))