def putSomeData(mood=Mood.HAPPY, content=Media.PICTURE):
     # grab term
     #whichTerm = int(random.random() * len(ContentDataOrganizer.FUNNY_TERMS))
     #term = ContentDataOrganizer.FUNNY_TERMS[whichTerm]
     
     # our database
     moodPics = Media.objects.filter(moods=mood, content_type = content)
     num_moodPics = ContentDataOrganizer.NUM_DATA - len(moodPics)
     
     PictureRetriever.pullPictures(mood, \
                                   ContentDataOrganizer.HAPPY_TERMS,\
                                   num_moodPics)
    def putSomeData(mood=Mood.HAPPY, content=Media.PICTURE):
        # grab term
        #whichTerm = int(random.random() * len(ContentDataOrganizer.FUNNY_TERMS))
        #term = ContentDataOrganizer.FUNNY_TERMS[whichTerm]

        # our database
        moodPics = Media.objects.filter(moods=mood, content_type=content)
        num_moodPics = ContentDataOrganizer.NUM_DATA - len(moodPics)

        PictureRetriever.pullPictures(mood, \
                                      ContentDataOrganizer.HAPPY_TERMS,\
                                      num_moodPics)
    def collectContentCronJob(mood, content):
        datas = Media.objects.filter(moods=mood, content_type = content)
        num_data_needed = ContentDataOrganizer.NUM_DATA - len(datas)
        
#        if num_data_needed <= 0:
#            print 'already have enough data'
        
        if content == Media.PICTURE:
            print 'Picture filter: ' + mood + ', needed ' + str(num_data_needed) + ' pictures'
            numAdded = PictureRetriever.pullAndFilter(mood, \
                                                      ContentDataOrganizer._getRandomTerms(mood), \
                                                      num_data_needed, \
                                                      ContentDataOrganizer.PARTITION_NUM)
            print '-- added: ' + str(numAdded) + ' new pictures'
#            PictureRetriever.pullPictures(mood, \
#                                          ContentDataOrganizer._getRandomTerms(mood), \
#                                          num_data_needed)
        elif content == Media.VIDEO:
            print 'Video filter: ' + mood + ', needed ' + str(num_data_needed) + ' videos'
            numAdded = VideoRetriever.pullAndFilter(mood, \
                                                    ContentDataOrganizer._getRandomTerms(mood), \
                                                    num_data_needed, \
                                                    ContentDataOrganizer.PARTITION_NUM)
            print '-- added: ' + str(numAdded) + ' new videos'
#            if num_data_needed <= 0:
#                print 'already have enough data'
#            VideoRetriever.pullVideos(mood, \
#                                      ContentDataOrganizer._getRandomTerms(mood), \
#                                      num_data_needed)
            
        return None
    def collectContentCronJob(mood, content):
        datas = Media.objects.filter(moods=mood, content_type=content)
        num_data_needed = ContentDataOrganizer.NUM_DATA - len(datas)

        #        if num_data_needed <= 0:
        #            print 'already have enough data'

        if content == Media.PICTURE:
            print 'Picture filter: ' + mood + ', needed ' + str(
                num_data_needed) + ' pictures'
            numAdded = PictureRetriever.pullAndFilter(mood, \
                                                      ContentDataOrganizer._getRandomTerms(mood), \
                                                      num_data_needed, \
                                                      ContentDataOrganizer.PARTITION_NUM)
            print '-- added: ' + str(numAdded) + ' new pictures'
#            PictureRetriever.pullPictures(mood, \
#                                          ContentDataOrganizer._getRandomTerms(mood), \
#                                          num_data_needed)
        elif content == Media.VIDEO:
            print 'Video filter: ' + mood + ', needed ' + str(
                num_data_needed) + ' videos'
            numAdded = VideoRetriever.pullAndFilter(mood, \
                                                    ContentDataOrganizer._getRandomTerms(mood), \
                                                    num_data_needed, \
                                                    ContentDataOrganizer.PARTITION_NUM)
            print '-- added: ' + str(numAdded) + ' new videos'
#            if num_data_needed <= 0:
#                print 'already have enough data'
#            VideoRetriever.pullVideos(mood, \
#                                      ContentDataOrganizer._getRandomTerms(mood), \
#                                      num_data_needed)

        return None
Example #5
0
 def test_filteroutlowscore(self):
     ms = Media.objects.all()
     m0 = ms[0]
     m1 = ms[1]
     m2 = ms[2]
     for i in range(0,10):
         m0.thumbs_down()
         
     for i in range(0,9):
         m1.thumbs_down()
         
     for i in range(0,15):
         m2.thumbs_up()         
         
     PictureRetriever.pullAndFilter(Mood.HAPPY, ['happy'], 0, 20)
     ms = Media.objects.all()
     self.assertEqual(10, len(ms))
     self.assertFalse(m0 in ms)# out because more than 10 rating and it sucks
     self.assertTrue(m1 in ms) #in because less than 10 ratings
     self.assertTrue(m2 in ms) # in because its good
Example #6
0
    def test_filteroutlowscore(self):
        ms = Media.objects.all()
        m0 = ms[0]
        m1 = ms[1]
        m2 = ms[2]
        for i in range(0, 10):
            m0.thumbs_down()

        for i in range(0, 9):
            m1.thumbs_down()

        for i in range(0, 15):
            m2.thumbs_up()

        PictureRetriever.pullAndFilter(Mood.HAPPY, ['happy'], 0, 20)
        ms = Media.objects.all()
        self.assertEqual(10, len(ms))
        self.assertFalse(m0
                         in ms)  # out because more than 10 rating and it sucks
        self.assertTrue(m1 in ms)  #in because less than 10 ratings
        self.assertTrue(m2 in ms)  # in because its good
Example #7
0
    moods = [Mood.HAPPY, Mood.ROMANTIC]  # , Mood.INSPIRED, Mood.EXCITED]
    picOnly = True
    fill_up_to = 100
    min_pic = 100
    min_vid = 20
    # num_data_needed = 100

    for mood in moods:
        pic_num = fill_up_to - len(
            Media.objects.filter(moods=mood, content_type="PI"))
        pic_num = 0 if pic_num < 0 else pic_num

        vid_num = fill_up_to - len(
            Media.objects.filter(moods=mood, content_type="VI"))
        vid_num = 0 if vid_num < 0 else vid_num

        print 'adding ' + str(pic_num) + ' num of pic'
        print 'adding ' + str(vid_num) + ' num of vid'

        part_num_pic = min_pic if pic_num * 3 < min_pic else pic_num * 3
        part_num_vid = min_vid if vid_num * 3 < min_vid else vid_num * 3

        PictureRetriever.pullAndFilter(
            mood, ContentDataOrganizer._getRandomTerms(mood), pic_num,
            part_num_pic)

        if not picOnly:
            VideoRetriever.pullAndFilter(
                mood, ContentDataOrganizer._getRandomTerms(mood), vid_num,
                part_num_vid)
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "servercore.settings")

    from servercore.CmmCore.ContentDataOrganizer.Retrievers import PictureRetriever, VideoRetriever
    from servercore.CmmCore.ContentDataOrganizer.ContentDataOrganizer import ContentDataOrganizer
    from servercore.CmmData.models import Mood, Media
    
    moods = [Mood.HAPPY, Mood.ROMANTIC] # , Mood.INSPIRED, Mood.EXCITED]
    picOnly = True
    fill_up_to = 100
    min_pic = 100
    min_vid = 20
    # num_data_needed = 100
    
    for mood in moods:
        pic_num = fill_up_to - len(Media.objects.filter(moods = mood, content_type="PI"))
        pic_num = 0 if pic_num < 0 else pic_num
        
        vid_num = fill_up_to - len(Media.objects.filter(moods = mood, content_type="VI"))
        vid_num = 0 if vid_num < 0 else vid_num
        
        print 'adding ' + str(pic_num) + ' num of pic' 
        print 'adding ' + str(vid_num) + ' num of vid' 
        
        part_num_pic = min_pic if pic_num * 3 < min_pic else pic_num * 3
        part_num_vid = min_vid if vid_num * 3 < min_vid else vid_num * 3
        
        
        PictureRetriever.pullAndFilter(mood, ContentDataOrganizer._getRandomTerms(mood), pic_num, part_num_pic)
        
        if not picOnly:
            VideoRetriever.pullAndFilter(mood, ContentDataOrganizer._getRandomTerms(mood), vid_num, part_num_vid)
Example #9
0
 def setUp(self):
     PictureRetriever.pullPictures(Mood.HAPPY, 'happy', 21)
     pass
Example #10
0
 def test_addnum(self):
     PictureRetriever.pullAndFilter(Mood.HAPPY, ['happy'], 5, 20)
     ms = Media.objects.all()
     self.assertEqual(15, len(ms))
Example #11
0
 def setUp(self):
     PictureRetriever.pullPictures(Mood.HAPPY, 'happy', 10)
Example #12
0
 def test_addnum(self):
     PictureRetriever.pullAndFilter(Mood.HAPPY, ['happy'], 5, 20)
     ms = Media.objects.all()
     self.assertEqual(15, len(ms))