def api_upload(): results = {} status_code = 200 headers = {'Content-Type': 'application/json'} if request.method == 'POST': parsed_request = request.get_json() if 'files' not in parsed_request: status_code = 400 results['error'] = 'Unrecognized JSON object in request' return (json.dumps(results), status_code, headers) processed = [] for file_contents in parsed_request['files']: tokenized_text = word_tokenize(file_contents) keywords = get_keyword(file_contents) highlighted_words = get_highlighted_words(tokenized_text, keywords) abstract_id = insert_document(tokenized_text, keywords, abstracts) result = {} result['tokenized_text'] = tokenized_text result['keywords'] = keywords result['highlighted'] = highlighted_words result['abstract_id'] = abstract_id processed.append(result) results['results'] = processed else: # unknown requests type results['error'] = 'Method Not Allowed' status_code = 405 return (json.dumps(results), status_code, headers)
def keyword_output(): if request.method == 'POST': text = request.form['text'] tokenized_text = word_tokenize(text) keywords = get_keyword(text) highlighted = get_highlighted_words(tokenized_text, keywords) abstract_id = insert_document(tokenized_text, keywords, abstracts) related_abstracts = get_related_abstracts(abstract_id, keywords) create_file(text, keywords, abstract_id) return render_template('output.html', hashtags=keywords, tokenized_text=tokenized_text, highlighted_text=highlighted, abstract_id=abstract_id, related_abstracts=related_abstracts) else: return 'Something has gone terribly wrong.'
def get_data(opened_file): text = opened_file.read() decoded_text = text.decode("ISO-8859-1") tokenized_text = word_tokenize(decoded_text) keywords = get_keyword(decoded_text) highlighted_words = get_highlighted_words(tokenized_text, keywords) abstract_id = insert_document(tokenized_text, keywords, abstracts) # data that will be stored in output file filedata = {'abstract_id': abstract_id, 'filename': opened_file.filename, 'hashtags': keywords, 'original_abstract': decoded_text, } # create a new file for each file uploaded with the data from the results resultsfile = open('results' + '-' + str(abstract_id) + '.txt', 'w+') jsonifieddata = json.dumps(filedata) resultsfile.write(jsonifieddata) resultsfile.close() # data needed for webpage items to be populated data = {'filename': opened_file.filename, 'hashtags': keywords, 'text': decoded_text, 'tokenized_text': tokenized_text, 'highlighted_text': highlighted_words, 'abstract_id': abstract_id} return data
def get_keywords(): if request.method == 'POST': text = request.form['text'] return json.dumps(get_keyword(text)) else: return 'Something has gone terribly wrong.'