X-Git-Url: https://plomlompom.com/repos/?p=plomlombot-irc.git;a=blobdiff_plain;f=plomlombot.py;h=ffb4192ac8f2925b1d6a34684acfd585eec82c6f;hp=cf6bae90864be27ec6a750876b72070e36287774;hb=5b0bbd796a399d17311d0551ebd19fedaab717dd;hpb=81f2ce0b5a23a87f013f225193de67e85305a0fa diff --git a/plomlombot.py b/plomlombot.py index cf6bae9..ffb4192 100644 --- a/plomlombot.py +++ b/plomlombot.py @@ -75,11 +75,18 @@ def url_check(msg): matches = re.findall("(https?://[^\s]+)", msg) for i in range(len(matches)): url = matches[i] - webpage = urllib.request.urlopen(url) - content_type = webpage.info().get_content_type() + try: + webpage = urllib.request.urlopen(url, timeout=15) + except urllib.error.HTTPError as error: + print("TROUBLE FOLLOWING URL: " + str(error)) + continue charset = webpage.info().get_content_charset() - if not charset or not content_type in ('text/html', 'text/xml', + if not charset: + charset="utf-8" + content_type = webpage.info().get_content_type() + if not content_type in ('text/html', 'text/xml', 'application/xhtml+xml'): + print("TROUBLE INTERPRETING URL: bad content_type " + content_type) continue content = webpage.read().decode(charset) title = str(content).split('')[1].split('')[0]