Ejemplo n.º 1
0
    def produce(self, site):
        '''
        save the prod data correspond to model laptop to database

        '''
        prod = self._miner.get_prod(site)
        data = self._miner.output(prod)

        if data:
            obj = laptop(
                url=data['url'],
                title=data['title'],
                picture=data['picture'],
                cpu=data['cpu'],
                ram=data['ram'],
                ram_num=data['ram_num'],
                hardware=data['hardware'],
                screen=data['screen'],
                screen_num=data['screen_num'],
                price=data['price'],
                else_spec=data['else_spec'])

            self._lock.acquire()
            obj.save()
            self._lock.release()
Ejemplo n.º 2
0
def transform():
    '''
    anything for test...
    '''
    screen_num = re.compile('(?P<num>\d+[.]*\d+)[吋"]+')
    ram_num = re.compile('(?P<num>\d+)[ ]*G')

    file = open('D:/tt.txt', 'r')
    obj = json.loads(file.read())
    file.close()

    for index in obj:
        data = obj[index].copy()
        obj[index]['screen']
        obj[index]['ram']

        print(obj[index]['ram'])
        print(obj[index]['screen'])
        data['ram_num'] = ram_num.search(obj[index]['ram']).group('num')

        data['screen_num'] = screen_num.search(obj[index]['screen']).group('num')

        db = laptop(
            url=data['url'],
            title=data['title'],
            picture=data['picture'],
            cpu=data['cpu'],
            ram=data['ram'],
            ram_num=data['ram_num'],
            hardware=data['hardware'],
            screen=data['screen'],
            screen_num=data['screen_num'],
            price=data['price'],
            else_spec=data['else_spec'])

        db.save()