def _delete_model(request, model): items = model.replace(' VS. ', '_') User(session['username']).delete_model(model) session['models'] = User(session['username']).fetch_models() x = FileController() file = x.fetch_path(session['username']) os.remove(file+"/{}.pickle".format(items)) return redirect("/training")
def _delete_datasource(request, item): User(session['username']).delete_source(item) session['data_sources'] = User(session['username']).fetch_data_list() con = sqlite3.connect(settings['MAIN_DB']) con.execute("DELETE FROM secrets WHERE username='******'".format( session['username'])) con.execute("DELETE FROM secret_keys WHERE username='******'".format( session['username'])) con.commit() con.close() return redirect("/datasources")
def _login(request): form = LoginForm(request.form) data_dict = {} if request.method == 'POST' and form.validate(): data_dict['username'] = form.username.data data_dict['password'] = form.password.data user = User(data_dict['username']) if user.login_user(data_dict['password']): the_dict = user.load_user() for items in the_dict.items(): session[items[0]] = items[1] return redirect("/datasets") return render_template('Arrival/login.html', form=form)
def _datasources(request): form = TwitterForm(request.form) if request.method == 'POST' and form.validate(): m1 = form.access_token.data m2 = form.access_token_secret.data m3 = form.consumer_key.data m4 = form.consumer_secret.data my_list = [ bytes(m1, 'utf-8'), bytes(m2, 'utf-8'), bytes(m3, 'utf-8'), bytes(m4, 'utf-8') ] first = Fernet.generate_key() second = Fernet.generate_key() key1 = Fernet(first) key2 = Fernet(second) x = MultiFernet([key1, key2]) token1 = x.encrypt(my_list[0]) token2 = x.encrypt(my_list[1]) token3 = x.encrypt(my_list[2]) token4 = x.encrypt(my_list[3]) con = sqlite3.connect(settings['MAIN_DB']) con.execute("""CREATE TABLE IF NOT EXISTS {tn} (username TEXT, key1 BLOB, key2 BLOB, PRIMARY KEY (username))""".format( tn="secret_keys")) con.execute("""INSERT INTO secret_keys VALUES (?,?,?)""", (session['username'], first, second)) con.execute("""CREATE TABLE IF NOT EXISTS {tn} (username TEXT, access_token BLOB, access_token_secret BLOB, consumer_key BLOB, consumer_secret BLOB, PRIMARY KEY (username))""".format( tn="secrets")) con.execute("""INSERT INTO secrets VALUES (?,?,?,?,?)""", (session['username'], token1, token2, token3, token4)) con.commit() con.close() User(session['username']).create_data_source("Twitter") session['data_sources'] = User(session['username']).fetch_data_list() sources = User(session['username']).fetch_data_list() return render_template('User/datasources.html', form=form, sources=sources) else: sources = User(session['username']).fetch_data_list() return render_template('User/datasources.html', form=form, sources=sources)
def _delete_table(request, item): User(session['username']).delete_data(item) session['data_tables'] = User(session['username']).fetch_table_list() con = sqlite3.connect(settings['MAIN_DB']) con.execute("DELETE FROM KeywordTable WHERE username=? AND table_name=?", (session['username'], item)) con.commit() con.close() con = sqlite3.connect(settings['USERS_DB'].format(session['username'])) con.execute("DROP TABLE IF EXISTS {}".format(item)) con.commit() con.close() stuff = User(session['username']).load_user() session['data_tables'] = stuff['data_tables'] session['table_count_keywords'] = stuff['table_count_keywords'] return redirect("/datasets")
def load_stuff(lim_type, lim, mylist, the_table, current_session): if User(current_session['username']).login_user(password): thing = Scraper('track') thing.set_limit(lim_type, lim) thing.set_languages(['en']) thing.search_configure(mylist) thing.database_config(current_session['username'], the_table) thing.set_keys( User(current_session['username']).load_in_keys()) User(session['username']).make_data(table) thing.scrape() stuff = User(current_session['username']).load_user() current_session['data_tables'] = stuff['data_tables'] current_session['table_count_keywords'] = stuff[ 'table_count_keywords'] yield render_template('User/datasets.html', form=form, form2=form2, session=current_session)
def _train_table(request, traina, trainb): con = sqlite3.connect(settings['USERS_DB'].format(session['username'])).cursor() traininga = con.execute("SELECT plain_text FROM {}".format(traina)).fetchall() trainingb = con.execute("SELECT plain_text FROM {}".format(trainb)).fetchall() a, b = [], [] for item in traininga: a.append(item[0]) for item in trainingb: b.append(item[0]) my_list = [(item, 0) for item in a] my_list2 = [(item, 1) for item in b] my_list.extend(my_list2) random.shuffle(my_list) train1 = [] train2 = [] for item in my_list: train1.append(item[0]) train2.append(item[1]) print(traina, trainb) print(train1, train2) model = MakeModel(train1, train2, [traina, trainb]) x = FileController() file = x.fetch_path(session['username']) f = open(file+"/{}_{}.pickle".format(traina, trainb), 'wb') pickle.dump(model, f) f.close() User(session['username']).create_model("{} VS. {}".format(traina, trainb)) session['models'] = User(session['username']).fetch_models() # f.write('hi') # f.close() # print(traina, trainb, testa, testb) # print("{}/{}v{}".format(x.fetch_path(session['username']), traina, trainb)) # testlist = [(item, 0) for item in c] # testlist2 = [(item, 1) for item in d] # testlist.extend(testlist2) # print(my_list, testlist) return redirect("/training")