def export_tsv(): """ Exports a complete dump of the Opinions table to disk, in TSV format. """ opinions_path = os.path.join(settings.TSV_EXPORT_DIR, 'opinions.tsv.bz2') opinions_tmp = '%s_exporting' % opinions_path print 'Dumping all opinions into TSV file %s.' % opinions_path opinions = Opinion.objects.order_by('id') try: outfile = bz2.BZ2File(opinions_tmp, 'w') tsv = csv.writer(outfile, dialect=TSVDialect) for bucket in _split_queryset(opinions): for opinion in bucket: tsv.writerow(_fix_row([ opinion.id, int(mktime(opinion.created.timetuple())), OPINION_TYPES.get(opinion.type).short, getattr(PRODUCT_IDS.get(opinion.product), 'short', None), opinion.version, opinion.platform, opinion.locale, opinion.manufacturer, opinion.device, opinion.url, opinion.description, ])) finally: outfile.close() shutil.move(opinions_tmp, opinions_path) print 'All opinions dumped to disk.'
def item_categories(self, item): """Categorize comments. Style: "product:firefox" etc.""" categories = { 'product': PRODUCT_IDS.get(item.product).short, 'version': item.version, 'platform': item.platform, 'locale': item.locale, 'sentiment': item.type.short } return (':'.join(i) for i in categories.items())
def item_categories(self, item): """Categorize comments. Style: "product:firefox" etc.""" categories = { "product": PRODUCT_IDS.get(item.product).short, "version": item.version, "platform": item.platform, "locale": item.locale, "sentiment": item.type.short, } return (":".join(i) for i in categories.items())