Python+Flask搭建一个电影下载网站
来源:互联网 发布:格式转换软件 编辑:程序博客网 时间:2024/05/21 06:52
1. 写在前面的话
依旧想把Python学好,基础语法部分早就学了,应用部分一点点的渗透,可以往数据分析,爬虫, web,机器学习等方面发展,还有很长的路要走。OK,废话不多说,开始编程。
2. 搭建项目结构
一个好的项目,结构脉络一定要清晰,这样团队合作什么的才能更好协调。虽然我每次的结构也不是很好,但是尽量向这方面发展。如下图:
3. 写好配置文件以及命令行操作文件
需要用到的包有:Flask-Script,Flask-Sqlalchemy,Flask-Migrate等,现写好数据库等配置文件,然后写好manage命令行操作文件,如下:
import osDEBUG = TrueSECRET_KEY = os.urandom(24)DIALECT = 'mysql'DRIVER = 'pymysql'HOST = '127.0.0.1'PORT = '3306'USERNAME = 'root'PASSWORD = 'root'DATABASE = 'movie_demo3'SQLALCHEMY_DATABASE_URI = '{}+{}://{}:{}@{}:{}/{}'.format(DIALECT, DRIVER, USERNAME, PASSWORD, HOST, PORT, DATABASE)SQLALCHEMY_TRACK_MODIFICATIONS = False
from flask_script import Managerfrom flask_migrate import Migrate, MigrateCommandfrom MovieProject import appfrom exts import dbmanager = Manager(app)# 使用Migrate绑定app和dbmigrate = Migrate(app, db)# 添加迁移脚本的命令到manager中manager.add_command('db', MigrateCommand)if __name__ == '__main__': manager.run()
4. 编写数据库模型
这里主要写想要存入的电影数据,将你准备好的数据以类的方式存储,如下:
from exts import dbclass Recommend(db.Model): __tablename__ = 'recommend' id = db.Column(db.Integer, primary_key=True, autoincrement=True) title = db.Column(db.String(100), nullable=False) image = db.Column(db.Text, nullable=False) url = db.Column(db.Text, nullable=False)class Action(db.Model): __tablename__ = 'action' id = db.Column(db.Integer, primary_key=True, autoincrement=True) title = db.Column(db.String(100), nullable=False) image = db.Column(db.Text, nullable=False) url = db.Column(db.Text, nullable=False)class Fiction(db.Model): __tablename__ = 'fiction' id = db.Column(db.Integer, primary_key=True, autoincrement=True) title = db.Column(db.String(100), nullable=False) image = db.Column(db.Text, nullable=False) url = db.Column(db.Text, nullable=False)class War(db.Model): __tablename__ = 'war' id = db.Column(db.Integer, primary_key=True, autoincrement=True) title = db.Column(db.String(100), nullable=False) image = db.Column(db.Text, nullable=False) url = db.Column(db.Text, nullable=False)class Love(db.Model): __tablename__ = 'love' id = db.Column(db.Integer, primary_key=True, autoincrement=True) title = db.Column(db.String(100), nullable=False) image = db.Column(db.Text, nullable=False) url = db.Column(db.Text, nullable=False)class Funny(db.Model): __tablename__ = 'funny' id = db.Column(db.Integer, primary_key=True, autoincrement=True) title = db.Column(db.String(100), nullable=False) image = db.Column(db.Text, nullable=False) url = db.Column(db.Text, nullable=False)
5. 最后根据你想要渲染的模版,写出主程序
我在这个网站上面找了一些渲染的模版,然后主程序如下:
from flask import Flask, render_template, request, redirect, url_forimport configfrom exts import dbfrom models import Recommend, Action, Fiction, War, Love, Funnyapp = Flask(__name__)app.config.from_object(config)db.init_app(app)@app.route('/', methods=['GET','POST'])def index(): return render_template('index.html')@app.route('/detail/<name>', methods=['GET','POST'])def detail(name): page = request.args.get('page', 1, type=int) if name == 'recommend': pagination = Recommend.query.paginate(page, per_page=20, error_out=True) elif name == 'action': pagination = Action.query.paginate(page, per_page=20, error_out=True) elif name == 'fiction': pagination = Fiction.query.paginate(page, per_page=20, error_out=True) elif name == 'war': pagination = War.query.paginate(page, per_page=20, error_out=True) elif name == 'love': pagination = Love.query.paginate(page, per_page=20, error_out=True) elif name == 'funny': pagination = Funny.query.paginate(page, per_page=20, error_out=True) else: return '404' datas = pagination.items print(page) return render_template('detail.html', name=name, datas=datas, pagination=pagination)if __name__ == '__main__': app.run(debug=True)
6. 主要界面展示如下
具体项目地址请见这里,第一次搭建网站,请轻喷。以后会部署到阿里云上面。
阅读全文
0 0
- Python+Flask搭建一个电影下载网站
- 用python flask搭建一个网站[三]——表单
- 用python flask搭建一个网站[一]——服务器程序
- 用python flask搭建一个网站[二]——使用bootstrap模板
- 搭建flask网站全过程
- 下载电影的网站
- 项目实战 | Python Flask 构建微电影视频网站视频教程 百度云盘
- Flask构建微电影视频网站
- 搭建Apache+mod_wsgi+python+flask+virtualenv网站正式环境
- 从零开始用 Flask 搭建一个网站(一)
- 从零开始用 Flask 搭建一个网站(二)
- 从零开始用 Flask 搭建一个网站(三)
- 从零开始用 Flask 搭建一个网站(四)
- 用python来爬某电影网站的下载地址
- node.js搭建一个简单的电影网站
- Python:Flask环境搭建
- Python Flask打造一个视频网站实战视频教程
- 一个电影网站
- Sublime Text 3 配置java程序运行环境
- Java零基础到开发工程师之番外篇--html入门
- kafka安装记录
- Numerical Optimization和Convex optimization 两本书的选择?
- Java面试题--static关键字
- Python+Flask搭建一个电影下载网站
- 每天一个linux命令(60):scp命令
- ORB-SLAM:一种通用的(全能的)精确的单目SLAM系统(ORB-SLAM:一种通用的(全能的)精确的单目SLAM系统)
- UPnP基本应用及原理
- rbac(php)
- mysql登录时出现“程序注册时间到期 程序将被限制模式下运行”
- jS中第一级函数
- hrbust2363 Symmys(manacher+dp)
- 程序设计入门4 子序列的和