Exemplo n.º 1
0
 def _parse_categories(self, doc):
     categories = []
     for el in doc.getElementsByTagName('category'):
         cat = Category(self)
         cat.category_id = int(self._get_child_node_text(el, "category_id"))
         cat.category_name = self._get_child_node_text(el, "category_name")
         cat.level = int(self._get_child_node_text(el, "level"))
         if cat.level == 2:
             parent_category_id_string = self._get_child_node_text(el, "parent_category_id")
             cat.parent_category_id = int(parent_category_id_string) if parent_category_id_string else None 
             cat.parent_category_name = self._get_child_node_text(el, "parent_category_name")
         else:
             cat.parent_category_id = None
             cat.parent_category_name = None
         categories.append(cat)
     return categories
Exemplo n.º 2
0
 def _parse_category_tree(self, els, parent_category_id, parent_category_name):
     categories = []
     for el in els:
         if el.nodeType == el.ELEMENT_NODE:
             cat = Category(self)
             cat.category_id = int(self._get_child_node_text(el, "category_id"))
             cat.category_name = self._get_child_node_text(el, "category_name")
             cat.level = int(self._get_child_node_text(el, "level"))
             cat.parent_category_id = parent_category_id
             cat.parent_category_name = parent_category_name
             subcat_el = self._get_child_element(el, "subcategories")
             
             if (subcat_el):
                 cat.subcategories = self._parse_category_tree(subcat_el.childNodes,
                                                               cat.category_id,
                                                               cat.category_name)
                  
             categories.append(cat)
         
     return categories