# -*- coding: utf-8 -*- from urllib.parse import urlparse import irc3 import requests from docopt import Dict as DocOptDict from irc3.plugins.command import command from irc3.utils import IrcString from . import DatabasePlugin @irc3.plugin class Useless(DatabasePlugin): requires = ['irc3.plugins.command', 'bot.plugins.storage'] @command def isup(self, mask: IrcString, target: IrcString, args: DocOptDict): """Checks if a address is up. %%isup
""" address = args['
'] if not address.startswith('http://'): address = 'https://{}'.format(address) parsed = urlparse(address) try: requests.head(address) state = 'up' except requests.ConnectionError: state = 'down' return '{}://{} seems to be {}'.format(parsed.scheme, parsed.netloc, state)