Python笔记-flask执行后台程序(非web应用)

这里主要是想写一个爬虫,因为SQLAlchemy和Manager管理项目比较爽,在此记录下。

程序结构如下

关键源码如下:

application.py

from flask import Flask
from flask_script import Manager
from flask_sqlalchemy import SQLAlchemy

app = Flask(__name__)
manager = Manager( app )
app.config['SQLALCHEMY_DATABASE_URI'] = "mysql://root:[email protected]/reptile_it1995"
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = True
db = SQLAlchemy(app)

manager.py

from application import app, manager
from flask_script import Command, Server
from csdn import CSDN

manager.add_command( "runserver",Server( host = "0.0.0.0",use_debugger=True,use_reloader= True ) )



@Command
def runReptile():
    csdn = CSDN()
    csdn.run()
    pass

manager.add_command("runReptile", runReptile)


def main():
    manager.run()

if __name__ == "__main__":
    try:
        import sys
        sys.exit(main())
    except Exception as e:
        import traceback
        traceback.print_exc()

启动的时候通过如下命令:

python manager.py runReptile

这里在PyCharm中可以更好的设置,这样方便下断点:

main函数一般是放在manager.py里面的,带的参数为manager中添加的@Command,也就是runReptile

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章