Ejemplo n.º 1
0
def apply_mapping(mapping):
    channels = get_channels()
    for channel in channels:
        for p in channel.programs:
            name = normallize_name(p.name.encode('utf8'))
            matched_douban_movie_id = mapping.get(name)
            if matched_douban_movie_id:
                exist = db.session.query(ProgramExtra) \
                        .filter(ProgramExtra.name==name) \
                        .filter(ProgramExtra.douban_movie_id==matched_douban_movie_id) \
                        .first()
                if not exist:
                    print 'apply %s to %s' % (matched_douban_movie_id, p)
                    extra = ProgramExtra(
                            name=name,
                            douban_movie_id=matched_douban_movie_id,
                            program_id=p.id,
                            )
                    p.extra = extra
                    db.session.add(extra)
                    db.session.add(p)
                else:
                    print 'exist:', name, matched_douban_movie_id
            db.session.commit()
            print channel, 'applied'
Ejemplo n.º 2
0
 def test_normallize_name(self):
     names = [
             ('故事片:蜘蛛侠', '蜘蛛侠'),
             ('电影情报站 (1) ', ''),
             ('醉拳3', '醉拳3'),
             ('格斗之夜(224)', '格斗之夜'),
             ('八辈子学吃(1)', '八辈子学吃'),
             ('2012我要上春晚特别节目-直通春晚(4)1/3', '-我要上春晚特别节目-直通春晚'),
             ('电视剧:加油妈妈17/35', '加油妈妈'),
             ('消费主张周末版45', '消费主张周末版45'),
             ('故事片:东成西就2011', '东成西就2011'),
             ('新闻1+1(重播)', '新闻-+1'),
             ('电视剧:铁齿铜牙纪晓岚4(11)', '铁齿铜牙纪晓岚-'),
             ('电视剧:新都市人(9、10)', '新都市人'),
             ('电视剧:媳妇的美好宣言(28-32)', '媳妇的美好宣言'),
             ('午间360', '午间360'),
             ('热门影院2012年11月30日3', '热门影院-年-月-日3'),
             ('发现中国(123)', '发现中国'),
             ('刷新3+7', '刷新-+7'),
             ('回看  父子神探之神秘数字', '父子神探之神秘数字'),
             ('回看 故事片: 民警故事', '民警故事'),
             ('电影:大沙暴', '大沙暴')
             ]
     for i, (name, expect) in enumerate(names):
         result = normallize_name(name)
         print i, expect, result, name
         self.assertEquals(expect, result)
Ejemplo n.º 3
0
def get_all_normalized_names():
    names = get_all_names()
    names = unique([normallize_name(n) for n in names])
    names = [n for n in names if n]
    return names