- 将上文中的excel数据写入sqlites3数据库的movie表中
import os,sqlite3
import pandas as pd
from sqlalchemy import create_engine
execl_path = r'D:\doubanTop250.xls'
data = pd.read_excel(excel_path)
def save_sqlite(db_name):
db_file = os.path.join(os.path.dirname(__file__),db_name)
db_conn = sqlite3.connect(db_file)
data.to_sql(db_file,con=db_conn,if_exists='replace',index=False)
save_sqlite('douban.db')
- 通过pycharm创建flask项目,项目内包括app.py主程序,douban.db数据库文件,还有static、templates文件夹。
其中movie.html放入templates文件夹,bootstrap.min.css放入static文件夹下的css目录
app.py文件:
from flask import Flask,render_template
import sqlite3
app = Flask(__name__)
@app.route('/')
def movie():
conn = sqlite3.connect('douban.db')
cur = conn.cursor()
sql = 'SELECT * from movie'
data = cur.execute(sql)
datalist = []
for item in data:
datalist.append(item)
cur.close()
conn.close()
return render_template('movie.html',movies=datalist)
if __name == '__main__':
app.run(port=5678)
movie.html文件:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>豆瓣电影Top250</title>
<!-- css -->
<link rel="stylesheet" href="static/css/bootstrap.min.css">
</head>
<body>
<div class="container">
<table class="table table-striped">
<tr>
<th>电影中文名</th>
<th>概述</th>
<th>评分</th>
<th>评分数</th>
<th>相关信息</th>
</tr>
{% for movie in movies %}
<tr>
<td>
<a href="{{movie[0]}}">
{{movie[1]}}
</a>
</td>
<td>{{movie[2]}}</td>
<td>{{movie[3]}}</td>
<td>{{movie[4]}}</td>
<td>{{movie[5]}}</td>
</tr>
{% endfor %}
</table>
</div>
</body>
</html>