From 9f2e541f950d245198f893936de4ebece69894ba Mon Sep 17 00:00:00 2001 From: Oleg Broytman Date: Sun, 12 Nov 2023 21:19:58 +0300 Subject: [PATCH] Fix(robots): Process response without `Content-Type` Try to recognize HTML. --- Robots/bkmk_robot_base.py | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/Robots/bkmk_robot_base.py b/Robots/bkmk_robot_base.py index 9a74cb4..b5cac69 100644 --- a/Robots/bkmk_robot_base.py +++ b/Robots/bkmk_robot_base.py @@ -126,6 +126,13 @@ class robot_base(Robot): try: content_type = headers["Content-Type"] self.log(" Content-Type: %s" % content_type) + if content_type is None: + if 'html' in content.lower(): + content_type = 'text/html' + else: + content_type = 'text/plain' + self.log(" Set Content-Type to: %s" + % content_type) try: # extract charset from # "text/html; foo; charset=UTF-8, bar; baz;" @@ -187,9 +194,11 @@ class robot_base(Robot): icons[icon_url] = None else: content_type = icon_headers["Content-Type"] - if content_type.startswith("application/") \ - or content_type.startswith("image/") \ - or content_type.startswith("text/plain"): + if content_type and ( + content_type.startswith("application/") + or content_type.startswith("image/") + or content_type.startswith("text/plain") + ): bookmark.icon_href = icon_url self.log(" got icon : %s" % content_type) -- 2.39.2