diff --git a/Backend-libXML/Parser.py b/Backend-libXML/Parser.py index 67ebfc1..14ce916 100644 --- a/Backend-libXML/Parser.py +++ b/Backend-libXML/Parser.py @@ -58,10 +58,16 @@ def xpath(source: str, xpath: str) -> str: nsmap.pop(None) result = root.xpath(xpath, namespaces=nsmap) - result_string = "" - for e in result: - result_string += etree.tostring(e, pretty_print=True).decode() + "\n" - return result_string + + # root.xpath can return 4 types: float, string, bool and list. + # List is the only one that can't be simply converted to str + if result is not list: + return str(result) + else: + result_string = "" + for e in result: + result_string += etree.tostring(e, pretty_print=True).decode() + "\n" + return result_string