예제 #1
0
def compute_category_induced():
    category = mw_util.str2cat(request.form['category'])
    try:
        ci = category_induced.CategoryInduced(category)
        ci.categories = ci.list_category()
        first_images = [ci.first_image(x) for x in ci.categories]
        first_images.sort()
        categories_count = len(first_images)
        images = [x.decode('utf-8')[5:].replace(" ", "_") for x in ci.list_images()]
        images_count = len(images)
        result = [first_images[x][0] for x in range(len(first_images))
                  if (len(first_images[x][1]) > 0
                      and first_images[x][1][0] in images)]
        result.sort()
        results_count = len(result)
        categories_traversed_count = len(first_images)
        contents = '\n'.join(result)
        return render_template('category-induced-result.html',
                               category=category,
                               images_count=images_count,
                               categories_count=categories_count,
                               results_count=results_count,
                               contents=contents)
    except Exception, e:
        return render_template('error.html', message=e)
예제 #2
0
 def test_str2cat(self):
     """Test str2cat."""
     values = [
         ('A', 'Category:A'),
         ('Category:B', 'Category:B'),
         ('C D', 'Category:C_D'),
     ]
     for value, expected in values:
         self.assertEqual(str2cat(value), expected)
예제 #3
0
 def test_str2cat(self):
     """Test str2cat."""
     values = [
         ('A', 'Category:A'),
         ('Category:B', 'Category:B'),
         ('C D', 'Category:C_D'),
     ]
     for value, expected in values:
         self.assertEqual(str2cat(value), expected)
예제 #4
0
def compute_category_induced():
    """Compute the induced categories."""
    category = mw_util.str2cat(request.form['category'])
    app.logger.info('CategoryInduced on %s' % (category))
    try:
        ci = category_induced.CategoryInduced(category)
        ci.induce_categories()
        contents = '\n'.join(ci.result)
        return render_template('category-induced-result.html',
                               category=category,
                               images_count=ci.images_count,
                               categories_count=ci.categories_traversed_count,
                               results_count=ci.results_count,
                               contents=contents)
    except Exception, e:
        return render_template('error.html', message=e)
예제 #5
0
def compute_category_induced():
    """Compute the induced categories."""
    category = mw_util.str2cat(request.form['category'])
    app.logger.info('CategoryInduced on %s' % (category))
    try:
        ci = category_induced.CategoryInduced(category)
        ci.induce_categories()
        contents = '\n'.join(ci.result)
        return render_template('category-induced-result.html',
                               category=category,
                               images_count=ci.images_count,
                               categories_count=ci.categories_traversed_count,
                               results_count=ci.results_count,
                               contents=contents)
    except Exception, e:
        return render_template('error.html', message=e)