我已经部署了我的模型。但是当我点击submit按钮时,我并没有看到预测,而是看到一个错误,页面不存在。请帮帮我` 这是app.py代码
movies = pd.read_csv('movies.csv')
app = flask.Flask(__name__, template_folder='templates')
count = CountVectorizer()
count_matrix = count.fit_transform(movies['All_Words'])
cosine_sim = cosine_similarity(count_matrix, count_matrix)
indices = pd.Series(movies.index)
all_titles = [movies['Title'][i] for i in range(len(movies['Title']))]
def recommendations(Title, cosine_sim = cosine_sim):
recommended_movies = []
idx = indices[indices == Title].index[0]
score_series = pd.Series(cosine_sim[idx]).sort_values(ascending = False)
top_10_indexes = list(score_series.iloc[1:11].index)
# populating the list with the titles of the best 10 matching movies
for i in top_10_indexes:
recommended_movies.append(list(movies.index)[i])
return recommended_movies
def get_recommendations(Title):
cosine_sim = cosine_similarity(count_matrix, count_matrix)
idx = indices[Title]
sim_scores = list(enumerate(cosine_sim[idx]))
sim_scores = sorted(sim_scores, key=lambda x: x[1], reverse=True)
sim_scores = sim_scores[1:11]
movie_indices = [i[0] for i in sim_scores]
tit = movies['Title'].iloc[movie_indices]
dat = movies['All_Words'].iloc[movie_indices]
return_df = pd.DataFrame(columns=['Title','All_Words'])
return_df['Title'] = tit
return_df['All_Words'] = dat
return return_df
@app.route('/', methods=['GET', 'POST'])
def main():
if flask.request.method == 'GET':
return(flask.render_template('mainpage.html'))
if flask.request.method == 'POST':
m_name = flask.request.form['movie_name']
m_name = m_name.title()
#if m_name in all_titles:
#return(flask.render_template('negative.html',name=m_name))
result_final = recommendations(m_name)
names = []
names.append(result_final)
return flask.render_template('positive.html',movie_names=names,search_name=m_name)
if __name__ == '__main__':
app.run()
这是mainpage.html
!-- Demo -->
<div class="movie">
<h2 style="color:black;">Movie Recommendation System</h2>
<form action="{{ url_for('main') }}" method="POST">
<input type="text" id="movie_name" name="movie_name" placeholder="Enter movie name" required />
<input type="submit" id="submission_button" value="Submit"/>
</form>
这是positive.html
<div class="movie">
<h2><b>RECOMMENDATIONS</b></h2>
<p>Showing results for: {{ search_name }}</p>
<table class="movie_table" align="center">
<tr>
<th>Movie Title</th>
</tr>
<tbody class="table_body">
<tr>
<td>{{ movie_names[0] }}</td>
</tr>
<tr>
<td>{{ movie_names[1] }}</td>
</tr>
<tr>
<td>{{ movie_names[2] }}</td>
</tr>
<tr>
<td>{{ movie_names[3] }}</td>
</tr>
<tr>
<td>{{ movie_names[4] }}</td>
</tr>
<tr>
<td>{{ movie_names[5] }}</td>
</tr>
<tr>
<td>{{ movie_names[6] }}</td>
</tr>
<tr>
<td>{{ movie_names[7] }}</td>
</tr>
<tr>
<td>{{ movie_names[8] }}</td>
</tr>
<tr>
<td>{{ movie_names[9] }}</td>
</tr>
</tbody>
</table>
请帮帮我。单击“提交”时,我希望我的建议以表格形式显示
目前没有回答
相关问题 更多 >
编程相关推荐