赞
踩
[毕业设计]2023-2024年最新最全计算机专业毕设选题推荐汇总
感兴趣的可以先收藏起来,还有大家在毕设选题,项目以及论文编写等相关问题都可以给我留言咨询,希望帮助更多的人 。
1、前端:vue框架 、echarts可视化
2、后端:Python语言、flask框架
3、爬虫: Scrapy爬虫框架 (智联招聘)
4、算法:基于用户协同过滤推荐算法、基于物品协同过滤推荐算法
5、接口:百度AI
6、数据库数据量: 13.4万 MySQL数据库
1.爬取智联招聘10多个城市的50万条就业数据后,进行转化和清洗,存储到mysql数据库;
2. 职位推荐与分析
3. 利用Flask开发接口,对接Vue前端,实现对求职招聘数据的可视化分析
(Echarts 多种图形和词云、薪酬分析)
4、亮点:
(1)实现的分析图:数据大屏、职位分布中国地图、薪酬散点图、词云、多种折线图、饼图、环图等 (Vue集成 Apache Echarts);
(2)实现jieba分词+词云分析
(3)推荐算法: 两种协同过滤推荐算法使用(基于用户、基于物品)
(4)身份证Ocr 识别
(5)实名认证: 【百度api】身份证Ocr 识别
(1)招聘数据分析可视化大屏
(2)数据分析页面
(3)基于物品系统过滤推荐算法推荐
(4)基于用户系统过滤推荐算法推荐
(5)数据分析页面
(6)薪资分析散点图
(7)个人信息设置
(8)注册登录界面
import os import time from flask import Flask, send_from_directory, request from flask_sqlalchemy import SQLAlchemy from flask_marshmallow import Marshmallow from werkzeug.utils import secure_filename, redirect from api.alipayApi import payBp from api.baiduApi import idocr from base.core import JSONEncoder from base.response import ResMsg from api.testApi import bp import logging app = Flask(__name__) app.register_blueprint(bp, url_prefix='/test') # app.register_blueprint(movieBp, url_prefix='/movie') app.register_blueprint(payBp, url_prefix='/alipay') app.config['SQLALCHEMY_DATABASE_URI'] = 'mysql+pymysql://root:123456@localhost/flask_job' app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False app.config['JSON_AS_ASCII'] = False app.config['SECRET_KEY'] = 'KJDFLSjfldskj' UPLOAD_FOLDER="upload" app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER basedir = os.path.abspath(os.path.dirname(__file__)) ALLOWED_EXTENSIONS = set(['txt','png','jpg','xls','JPG','PNG','gif','GIF']) # 日志系统配置 handler = logging.FileHandler('error.log', encoding='UTF-8') logging_format = logging.Formatter( '%(asctime)s - %(levelname)s - %(filename)s - %(funcName)s - %(lineno)s - %(message)s') handler.setFormatter(logging_format) app.logger.addHandler(handler) # 返回json格式转换 app.json_encoder = JSONEncoder db = SQLAlchemy(app) ma = Marshmallow(app) from api.userApi import userBp from api.jobApi import jobBp app.register_blueprint(userBp, url_prefix='/user') app.register_blueprint(jobBp, url_prefix='/job') @app.route('/test') def test(): # put application's code here res = ResMsg() test_dict = dict(name="zhang", age=19) res.update(data=test_dict, code=0) return res.data @app.errorhandler(500) def special_exception_handler(error): app.logger.error(error) return '请联系管理员', 500 #判断文件后缀 def allowed_file(filename): return '.' in filename and filename.rsplit('.',1)[1] in ALLOWED_EXTENSIONS @app.route('/file/upload', methods=['POST'], strict_slashes=False) def api_upload(): res = ResMsg() file_dir=os.path.join(basedir, app.config['UPLOAD_FOLDER']) if not os.path.exists(file_dir): os.makedirs(file_dir) f = request.files['myfile'] if f and allowed_file(f.filename): fname = f.filename # fname = secure_filename(f.filename) print(fname) ext = fname.rsplit('.', 1)[1] unix_time = int(time.time()) new_filename = str(unix_time)+'.'+ext f.save(os.path.join(file_dir, new_filename)) res.update(data=new_filename, code=0) return res.data @app.route('/file/idocr', methods=['POST'], strict_slashes=False) def api_id_ocr(): res = ResMsg() file_dir=os.path.join(basedir, app.config['UPLOAD_FOLDER']) if not os.path.exists(file_dir): os.makedirs(file_dir) f = request.files['myfile'] if f and allowed_file(f.filename): fname = f.filename # fname = secure_filename(f.filename) 有中文这个会有问题 # print(fname) ext = fname.rsplit('.', 1)[1] unix_time = int(time.time()) new_filename = str(unix_time)+'.'+ext f.save(os.path.join(file_dir, new_filename)) idno = idocr(new_filename)[0] name = idocr(new_filename)[1] res.update(data=dict(idno=idno,pic=new_filename,name=name), code=0) return res.data @app.route('/file/download/<filename>/') def api_download(filename): # print('下载..' + filename) return send_from_directory('upload', filename, as_attachment=False) if __name__ == '__main__': # app.run(debug=True,host='0.0.0.0',port=5000) app.run()
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/366308?site
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。