def downloadprepros(masukan): f = StringIO() for a in masukan: print('manja', a) f.write(a) f.write('\n') f.flush() f.seek(0) response = HttpResponse(FileWrapper(f), content_type='text/csv') response['Content-Disposition'] = 'attachment; filename=test.csv' return response
def hasilCSV(request): if request.method == 'POST': name = request.FILES['fileInput'].name typeFile = name.split('.')[1] if(typeFile == 'txt'): reader = TextIOWrapper(request.FILES['fileInput'].file, encoding='utf-8') elif(typeFile == 'csv'): try: text = TextIOWrapper(request.FILES['fileInput'].file, encoding='utf-8') reader = csv.reader(text) except: text = StringIO(request.FILES['fileInput'].file.read().decode()) reader = csv.reader(text) arrData = [] for line in reader: line = ''.join(line) arrData.append(line) myfile = StringIO() metode = request.POST['metode'] statusFormalisasi = request.POST.get('formalisasi', False) if(metode == 'EDR'): for line in arrData: hasil = F_EDR(line) myfile.write(hasil + os.linesep) elif(metode == 'ED'): for line in arrData: hasil = F_ED(line) myfile.write(hasil + os.linesep) elif(metode == 'BG'): for line in arrData: hasil = F_BG(line) myfile.write(hasil + os.linesep) myfile.flush() myfile.seek(0) response = HttpResponse(FileWrapper(myfile), content_type='text/csv') response['Content-Disposition'] = 'attachment; filename=hasil.csv' return response else: return render(request, 'index_preprocess.html', {})
def downloadfile1(allfile, facebookdata): panjang = len(allfile) if panjang == 3: ##do something f = StringIO() wb = Workbook() ws = wb.active for row in facebookdata: f.write(row.name + ',' + row.status + ',' + str(row.like) + ',' + str(row.comment) + ',' + str(row.share)) f.write('\n') ws.append([row.name, row.status, row.like, row.comment, row.share]) f.flush() f.seek(0) ##make json g = StringIO() data = [] for row in facebookdata: data1 = {} data1["NAME"] = row.name data1["STATUS"] = row.status data1["LIKE"] = row.like data1["COMMENT"] = row.comment data1["SHARE"] = row.share data.append(data1) json.dump(data, g, indent=3) g.flush() g.seek(0) output = BytesIO() zip = ZipFile(output, 'w') zip.writestr("Data_facebook.csv", f.getvalue()) zip.writestr("Data_facebook.JSON", g.getvalue()) zip.writestr("Data_facebook.xlsx", save_virtual_workbook(wb)) zip.close() response = HttpResponse(output.getvalue(), content_type='application/octet-stream') response[ 'Content-Disposition'] = 'attachment; filename=Data_facebook.zip' return response elif panjang == 2: ##read list if '0' and '1' in allfile: ##return csv and json print('csv and jsn') #make csv f = StringIO() for row in facebookdata: f.write(row.name + ',' + row.status + ',' + str(row.like) + ',' + str(row.comment) + ',' + str(row.share)) f.write('\n') f.flush() f.seek(0) ##make json g = StringIO() data = [] for row in facebookdata: data1 = {} data1["NAME"] = row.name data1["STATUS"] = row.status data1["LIKE"] = row.like data1["COMMENT"] = row.comment data1["SHARE"] = row.share data.append(data1) json.dump(data, g, indent=3) g.flush() g.seek(0) output = BytesIO() zip = ZipFile(output, 'w') zip.writestr("Data_facebook.csv", f.getvalue()) zip.writestr("Data_facebook.JSON", g.getvalue()) zip.close() response = HttpResponse(output.getvalue(), content_type='application/octet-stream') response[ 'Content-Disposition'] = 'attachment; filename=Data_facebook.zip' return response elif '0' and '2' in allfile: #return csv and xls print('csv and xls') f = StringIO() for row in facebookdata: f.write(row.name + ',' + row.status + ',' + str(row.like) + ',' + str(row.comment) + ',' + str(row.share)) f.write('\n') f.flush() f.seek(0) g = StringIO() wb = Workbook() ws = wb.active for row in facebookdata: ws.append( [row.name, row.status, row.like, row.comment, row.share]) output = BytesIO() zip = ZipFile(output, 'w') zip.writestr("Data_facebook.csv", f.getvalue()) zip.writestr("Data_facebook.xlsx", save_virtual_workbook(wb)) zip.close() response = HttpResponse(output.getvalue(), content_type='application/octet-stream') response[ 'Content-Disposition'] = 'attachment; filename=Data_facebook.zip' return response else: #return json xls #make json file f = StringIO() data = [] for row in facebookdata: data1 = {} data1["NAME"] = row.name data1["TWEET"] = row.tweet data1["RETWEET_USER"] = row.Retweet_user data1["HASHTAGS"] = row.hashtag data1["DATE"] = str(row.date) data.append(data1) json.dump(data, f, indent=3) f.flush() f.seek(0) #make xls file g = StringIO() wb = Workbook() ws = wb.active for row in facebookdata: ws.append( [row.name, row.status, row.like, row.comment, row.share]) output = BytesIO() zip = ZipFile(output, 'w') zip.writestr("Data_facebook.csv", f.getvalue()) zip.writestr("Data_facebook.xlsx", save_virtual_workbook(wb)) zip.close() response = HttpResponse(output.getvalue(), content_type='application/octet-stream') response[ 'Content-Disposition'] = 'attachment; filename=Data_facebook.zip' return response elif panjang == 0: ##asli print('do nothing') return HttpResponseRedirect('../search2') else: if '0' in allfile: f = StringIO() writer = csv.writer(f) for row in facebookdata: writer.writerow( [row.name, row.status, row.like, row.comment, row.share]) f.flush() f.seek(0) response = HttpResponse(FileWrapper(f), content_type='text/csv') response[ 'Content-Disposition'] = 'attachment; filename=Data_facebook.csv' return response elif '1' in allfile: f = StringIO() data = [] for row in facebookdata: data1 = {} data1["NAME"] = row.name data1["STATUS"] = row.status data1["LIKE"] = row.like data1["COMMENT"] = row.comment data1["SHARE"] = row.share data.append(data1) json.dump(data, f, indent=3) f.flush() f.seek(0) response = HttpResponse(FileWrapper(f), content_type='js/json') response[ 'Content-Disposition'] = 'attachment; filename=Data_facebook.json' return response else: f = StringIO() wb = Workbook() ws = wb.active for row in facebookdata: ws.append( [row.name, row.status, row.like, row.comment, row.share]) response = HttpResponse(save_virtual_workbook(wb), content_type='application/vnd.ms-excel') response[ 'Content-Disposition'] = 'attachment; filename=Data_facebook.xlsx' return response