diff options
Diffstat (limited to 'modules')
| -rw-r--r-- | modules/acronym.py | 12 | ||||
| -rw-r--r-- | modules/eval_lua.py | 7 | ||||
| -rw-r--r-- | modules/fediverse/ap_utils.py | 5 | ||||
| -rw-r--r-- | modules/title.py | 10 |
4 files changed, 18 insertions, 16 deletions
diff --git a/modules/acronym.py b/modules/acronym.py index 212465d5..116317a1 100644 --- a/modules/acronym.py +++ b/modules/acronym.py @@ -9,11 +9,13 @@ class Module(ModuleManager.BaseModule): @utils.kwarg("usage", "<acronym>") def acronym(self, event): query = event["args_split"][0].upper() - response = utils.http.request(API % query, parse=True) - if response.data: - acronyms = [] - for element in response.data.find_all("acro"): - acronyms.append(element.expan.string) + response = utils.http.request(API % query) + + acronyms = [] + for element in response.soup().find_all("acro"): + acronyms.append(element.expan.string) + + if acronyms: event["stdout"].write("%s: %s" % (query, ", ".join(acronyms))) else: raise utils.EventResultsError() diff --git a/modules/eval_lua.py b/modules/eval_lua.py index 102aadc7..6b34c7c2 100644 --- a/modules/eval_lua.py +++ b/modules/eval_lua.py @@ -10,15 +10,14 @@ class Module(ModuleManager.BaseModule): @utils.hook("received.command.lua", min_args=1) def eval(self, event): try: - page = utils.http.request(EVAL_URL, - post_data={"input": event["args"]}, - method="POST", parse=True) + page = utils.http.request(EVAL_URL, post_data= + {"input": event["args"]}, method="POST") except socket.timeout: raise utils.EventError("%s: eval timed out" % event["user"].nickname) if page: - textareas = page.data.find_all("textarea") + textareas = page.soup().find_all("textarea") if len(textareas) > 1: out = textareas[1].text.strip("\n") event["stdout"].write("%s: %s" % (event["user"].nickname, out)) diff --git a/modules/fediverse/ap_utils.py b/modules/fediverse/ap_utils.py index fc6ea5fd..686b8850 100644 --- a/modules/fediverse/ap_utils.py +++ b/modules/fediverse/ap_utils.py @@ -38,8 +38,7 @@ class FindActorException(Exception): def find_actor(username, instance): hostmeta = HOSTMETA_TEMPLATE % instance - hostmeta_request = utils.http.Request(HOSTMETA_TEMPLATE % instance, - parse=True, check_content_type=False) + hostmeta_request = utils.http.Request(HOSTMETA_TEMPLATE % instance) try: hostmeta = utils.http.request(hostmeta_request) except: @@ -47,7 +46,7 @@ def find_actor(username, instance): webfinger_url = None if hostmeta.code == 200: - for item in hostmeta.data.find_all("link"): + for item in hostmeta.soup().find_all("link"): if item["rel"] and item["rel"][0] == "lrdd": webfinger_url = item["template"] break diff --git a/modules/title.py b/modules/title.py index d02f7249..01425dbe 100644 --- a/modules/title.py +++ b/modules/title.py @@ -50,14 +50,16 @@ class Module(ModuleManager.BaseModule): return -1, None try: - page = utils.http.request(url, parse=True) - except utils.http.HTTPWrongContentTypeException: - return -1, None + page = utils.http.request(url) except Exception as e: self.log.error("failed to get URL title for %s: %s", [url, str(e)]) return -1, None - if page.data.title: + if not page.content_type in utils.http.SOUP_CONTENT_TYPES: + return -1, None + page = page.soup() + + if page.title: title = utils.parse.line_normalise(page.data.title.text) if not title: return -3, None |
