diff --git a/grmn/updateserver.py b/grmn/updateserver.py index 0ef541a..2752b27 100644 --- a/grmn/updateserver.py +++ b/grmn/updateserver.py @@ -58,6 +58,14 @@ class UpdateInfo: rc.append(node.data) return ''.join(rc) + def urlencodedhtml_to_text(self, urltext): + html = unquote(urltext).replace("+", " ") + txt = html.replace("
", "\n") + txt = txt.replace("", "").replace("", "") + #txt = txt.replace("", u"\u001b[1;37m").replace("", u"\u001b[0m") + txt = txt.replace("
  • ", "\n * ").replace("
  • ", "") + return txt + def fill_from_response_dom(self, dom): self.source = "WebUpdater" self.sku = self.dom_get_text(dom.getElementsByTagName("RequestedPartNumber")) @@ -67,8 +75,8 @@ class UpdateInfo: if len(version_minor) > 0: self.fw_version = "{}.{:0>2s}".format(version_major, version_minor) self.license_url = self.dom_get_text(dom.getElementsByTagName("LicenseLocation")) - self.changelog = unquote(self.dom_get_text(dom.getElementsByTagName("ChangeDescription"))).replace("+", " ") - self.notes = unquote(self.dom_get_text(dom.getElementsByTagName("Notes"))).replace("+", " ") + self.changelog = self.urlencodedhtml_to_text(self.dom_get_text(dom.getElementsByTagName("ChangeDescription"))) + self.notes = self.urlencodedhtml_to_text(self.dom_get_text(dom.getElementsByTagName("Notes"))) self.language_code = self.dom_get_text(dom.getElementsByTagName("RequestedRegionId")) self.build_type = self.dom_get_text(dom.getElementsByTagName("BuildType")) self.additional_info_url = self.dom_get_text(dom.getElementsByTagName("AdditionalInfo"))