From 613ce653f3414d62162fb302faa9168b339314fd Mon Sep 17 00:00:00 2001
From: Enzo Simonnet <enzosim@laposte.net>
Date: Tue, 11 Oct 2022 17:46:35 +0000
Subject: [PATCH] Def fonctionne Pas encore exemples

---
 parsers/en_en.py | 19 ++++++++++++++-----
 1 file changed, 14 insertions(+), 5 deletions(-)

diff --git a/parsers/en_en.py b/parsers/en_en.py
index 6f741b6..a2e0b8e 100644
--- a/parsers/en_en.py
+++ b/parsers/en_en.py
@@ -51,13 +51,22 @@ class En_en_straktor(Wikstraktor):
 		while i < len(l.fullitems):
 			newSense = Sense(f"{baseId}{i}")
 			li = self.wtp.parse(l.fullitems[i])
-			for t in li.templates:
-				if t.normal_name() == self.constants['t_deflabel']:
-					newSense.set_domain(t.arguments[1].value)#We could use the second parameter for a comment
-					newSense.add_def(self.wiki_language, li.plain_text().strip())
+			j=0
+			while j < len(li.templates) and li.templates[j].normal_name() != self.constants['t_deflabel']:
+				j += 1
+			if j < len(li.templates):
+				newSense.set_domain(li.templates[j].arguments[1].value)#We could use the second parameter for a comment
+				newSense.add_def(self.wiki_language, self.wtp.parse(li.get_lists()[0].items[0]).plain_text().strip())
+				senses.append(newSense)
+				if len(li.get_lists(pattern = '##')) > 0:
+					for j, k in enumerate(li.get_lists(pattern = '##')[0].items):
+						if self.wtp.parse(k).templates[0].normal_name() == self.constants['t_deflabel']:
+							newSense2 = Sense(f"{baseId}{i}{j}")
+							newSense2.set_domain(self.wtp.parse(k).templates[0].arguments[1].value)#We could use the second parameter for a comment
+							newSense2.add_def(self.wiki_language, self.wtp.parse(k).plain_text().strip())
+							senses.append(newSense2)
 			# TODO: process examples
 			i += 1
-			senses.append(newSense)
 		return senses
 
 if __name__ == "__main__":
-- 
GitLab