Exemplo n.º 1
0
 def save(self):
     micro_material = {}
     for book in self.cook_books:
         for materials in book['material']:
             name = self.clean(materials['name'].strip())
             if name not in self.material:
                 self.material[name] = []
             amount = self.clean(self.unit_to_en(materials['amount'].strip().lower()))
             amount = self.reverse_num(amount)
             if re.match(r'.*\d+.*',amount):
                 self.material[name].append(amount)
             else:
                 if name not in micro_material:
                     micro_material[name] = []
                 micro_material[name].append(amount)
     
     _material = {}
     for n in self.material:
         if len(self.material[n]) > 0:
             _material[n] = self.material[n]
             m = Material()
             m.name = n
             amounts = [pseg.cut(amount) for amount in self.material[n]]
             amount_list = []
             m.amount = []
             for a in amounts:
                 amount = []
                 for _a in a:
                     amount.append({'word':_a.word,'flag':_a.flag})
                 m.amount.append(amount)
             m.save()
     self.material = _material
     #保存数据
     open(CONFIG['DATA_PATH']+'materials.json','w').write(json.dumps(self.material))
Exemplo n.º 2
0
    def save(self):
        micro_material = {}
        for book in self.cook_books:
            for materials in book['material']:
                name = self.clean(materials['name'].strip())
                if name not in self.material:
                    self.material[name] = []
                amount = self.clean(
                    self.unit_to_en(materials['amount'].strip().lower()))
                amount = self.reverse_num(amount)
                if re.match(r'.*\d+.*', amount):
                    self.material[name].append(amount)
                else:
                    if name not in micro_material:
                        micro_material[name] = []
                    micro_material[name].append(amount)

        _material = {}
        for n in self.material:
            if len(self.material[n]) > 0:
                _material[n] = self.material[n]
                m = Material()
                m.name = n
                amounts = [pseg.cut(amount) for amount in self.material[n]]
                amount_list = []
                m.amount = []
                for a in amounts:
                    amount = []
                    for _a in a:
                        amount.append({'word': _a.word, 'flag': _a.flag})
                    m.amount.append(amount)
                m.save()
        self.material = _material
        #保存数据
        open(CONFIG['DATA_PATH'] + 'materials.json',
             'w').write(json.dumps(self.material))