def get_kmeans_graph(): """GETs user location query, runs location through a Location class function called 'get books associated with location' from my Model.py and returns a list of book objects associated with a location with the user's input radius. Books are filtered out based on whether they have a description longer than 20 words.""" user_location_query = flaskrequest.args.get('search-input') print "user_location_query for get kmeans", user_location_query radius = flaskrequest.args.get('radius') print "radius for get kmeans", radius book_obj_list = Location.get_books_associated_with_location(radius, user_location_query) book_obj_list = [book_obj for book_obj in book_obj_list if book_obj.description] book_obj_list = [book_obj for book_obj in book_obj_list if len(book_obj.description.split(" ")) > 20] # from the book_cosine_similarity file kmeans_cluster_html = returns_kmeans_cluster_graph(book_obj_list) # kmeans result return jsonify(kmeans = kmeans_cluster_html)
def search_for_books(): """Search for books through the homepage by location.""" user_location_query = flaskrequest.args.get('search-input') #both print "user query, ", user_location_query radius = flaskrequest.args.get('radius') print "radius1, ", radius radius = int(radius) print "radius, ", radius print user_location_query #query for books associated with place within 100mi #returns a list of book objects jsonify_search_result_list = [] # json result ##hard code with LA cordinates due to quota limit:## book_obj_list = Location.get_books_associated_with_location(radius, user_location_query) #both book_obj_list = [book_obj for book_obj in book_obj_list if book_obj.description] book_obj_list = [book_obj for book_obj in book_obj_list if len(book_obj.description.split(" ")) > 20] print book_obj_list for book_object in book_obj_list: # json result book_dict = {} keyword_list = [word.keyword for word in book_object.keywords] keywords = filter(None, keyword_list) author_list = [author.author_name for author in book_object.authors if book_object.authors] book_dict["title"] = book_object.title.replace('"', "'") print book_dict["title"] book_dict["subtitle"] = book_object.subtitle book_dict["authors"] = ", ".join(author_list) book_dict["description"] = book_object.description.replace('"', "'") book_dict["thumbnailUrl"] = book_object.thumbnail_url book_dict["previewLink"] = book_object.preview_link book_dict["keywords"] = keywords print book_dict["keywords"] jsonify_search_result_list.append(book_dict) # print book_dict # print jsonify_search_result_list print "search complete" # user_location_query, jsonify_search_result_list = jsonList_query return jsonify(name = jsonify_search_result_list)