From 942c0161e2c0ff1f1029b560cc90690fb8ad14e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?N=C3=A9munaire?= Date: Tue, 3 Jul 2012 04:48:34 +0200 Subject: [PATCH] Do some stability improvement on WolframAlpha module --- modules/ddg/WFASearch.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/modules/ddg/WFASearch.py b/modules/ddg/WFASearch.py index d5d0884..93b30de 100644 --- a/modules/ddg/WFASearch.py +++ b/modules/ddg/WFASearch.py @@ -27,14 +27,20 @@ class WFASearch: @property def error(self): - return self.wfares["error"] == "true" + if self.wfares["error"] == "true": + return "An error occurs during computation: " + self.wfares.getNode("error").getNode("msg").getContent() + else: + proposal = list() + for dym in self.wfares.getNode("didyoumeans").getNodes("didyoumean"): + proposal.append(dym.getContent()) + return "Did you mean: " + ', '.join(proposal) + "?" @property def nextRes(self): try: if len(self.wfares.getNodes("pod")) > self.curPod: txt = "" - while txt == "" or subnode.getFirstNode("plaintext").getContent().strip() == "": + while txt == "" or subnode.getFirstNode("plaintext").getContent() == "": node = self.wfares.getNodes("pod")[self.curPod] subnode = node.getNodes("subpod")[self.curSubPod] @@ -43,7 +49,7 @@ class WFASearch: self.curPod += 1 self.curSubPod = 0 - txt = node["title"] + ": " + subnode.getFirstNode("plaintext").getContent().strip() + txt = node["title"] + " " + subnode["title"] + ": " + subnode.getFirstNode("plaintext").getContent() return txt except IndexError: pass