# wemedia **Repository Path**: hoeking/wemedia ## Basic Information - **Project Name**: wemedia - **Description**: wemedia用于生成自媒体的相关操作的 - **Primary Language**: Python - **License**: Apache-2.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-11-16 - **Last Updated**: 2025-06-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # wemedia #### 介绍 wemedia用于生成自媒体的相关操作的 #### 软件架构 Flask3+Bootstrap5+Python3.10+sqlite3 #### 安装教程 1. 使用miniConda创建虚拟环境wemedia 打开anaconda prompt,输入以下命令 ```shell e: cd E:\python\wemedia conda create -n wemedia python=3.10.14 # 出现Downloading and Extracting Packages: CondaSSLError: Encountered an SSL error. Most likely a certificate verification issue. conda activate wemedia # 网上各种解决方法,什么换通道,什么去ssl, 都没作用,我的情况,很可能dns问题;修改了dns, 就ok了。 # 我用的湖北电信,修改dns(202.103.24.68, 223.5.5.5) ; 再次创建虚拟环境,成功 # 使用poetry 管理虚拟环境 pip install poetry # 设置统一的虚拟环境目录 # poetry config virtualenvs.in-project true # 项目内创建虚拟环境 poetry config virtualenvs.path "D:\venv" # 统一的虚拟环境目录 # 安装依赖 requirements.txt cd E:\python\wemedia # 进入项目目录 poetry init --no-interaction poetry add -D "$(cat requirements.txt)" ``` 2. 安装在必要的包 requests 网络请求包 flask web框架 Jinja2 模板引擎 pillow 图片处理包 python-pptx pptx处理包 Flask-JWT 用户认证包 Flask-JWT-Extended 用户认证包 Flask-SQLAlchemy 数据库包 Flask-Login 用户认证包 Flask-Moment 时间处理包 Flask-WTF 表单处理包 Flask-SocketIO socket通信包 minio 云存储包 aligo 阿里云oss包 beautifulsoup4 网页解析包 selenium 浏览器自动化包 lxml xml解析包 zipp 压缩包 opencv-python 图像处理包 dashscope 阿里云灵积包 openai 人工智能包 openpyxl excel处理包 pymupdf pdf处理包 mistune markdown处理包 ```shell pip install requests pip install flask pip install Jinja2 pip install lxml pip install pillow pip install python-pptx pip install Flask-JWT pip install Flask-JWT-Extended pip install Flask-SQLAlchemy pip install Flask-Login pip install Flask-Moment pip install Flask-WTF pip install Flask-SocketIO pip install minio pip install aligo 安装阿里云盘 oss2 pip install -i https://mirrors.aliyun.com/pypi/simple/ --upgrade oss2 安装requests-html pip install -i https://mirrors.aliyun.com/pypi/simple/ --upgrade requests-html pip install beautifulsoup4 pip install selenium pip install zipp pip install opencv-python pip install dashscope pip install openai pip install openpyxl pip install pymupdf pip install mistune 安装腾讯云SDK,用于管理云资源(COS,SSL等) pip install -i https://mirrors.tencent.com/pypi/simple/ --upgrade tencentcloud-sdk-python ``` 3. xxxx 4. #### 前端相关: Google Fonts 问题: 这个页面点击按钮后,浏览器控制台会有一个提示: Tracking Prevention blocked access to storage for https://fonts.gstatic.com/s/opensans/v40/memvYaGs126MiZpBA-UvWbX2vVnXBbObj2OVTS-muw.woff2. 解决方法: https://blog.csdn.net/klsfp/article/details/118228645 fonts.loli.net 替换 fonts.googleapis.com ![20250415085132](https://mdblog.oss-cn-hangzhou.aliyuncs.com/chenlp.cc/docpic/20250415085132.png) #### 设计说明 ##### 项目目录结构 后端开发程序目录: common: 后端公用程序或工具处理目录 init_app.py: flask 工厂函数, 初始化应用程序, 注册蓝图, 加载配置文件, 加载数据库, 加载socketio, 加载登录验证模块, 加载jinja2自定义模板的程序, 加载openai的key exct.py: 预加载扩展应用或全局应用数据库,socketio,登录验证模块,跨域保护,登录管理等等 conf:配置和初始化应用程序目录 config.py: 基础配置文件 bluepoints: flask蓝图目录,用于模块化程序 sys: 系统管理蓝图(用户管理,资源管理等等) app: 用户登录并聊天蓝图 (用户注册,登录,聊天) models: 数据模型定义目录 templates: HTML模板文件目录 static: 静态css/js/images相关文件保存目录 ##### 服务器端程序设计 后端开发使用的相关技术栈: 使用Flask3框架 使用jinja2进行HTML模板处理 使用JSON文件作为Mysql数据库连接的配置文件 使用flask-sqlalchemy+pymysql包d的原生数据库模式进行数据库相关CRUD操作 使用flask-jwt进行用户登录验证 使用flask-moment包进行日期时间处理 使用flask-wtf包进行表单处理 使用flask-socketio包进行WebScoket功能实现 使用flask-restx包进行WebAPI封装 #### 数据库相关 提示词: #### 前端相关 CDN1:bootcdn.cn Font Awesome 字体为您提供可缩放矢量图标,它可以被定制大小、颜色、阴影以及任何可以用 CSS 的样式。 https://cdn.bootcdn.net/ajax/libs/font-awesome/6.6.0/css/all.min.css https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/5.3.3/css/bootstrap.min.css https://cdn.bootcdn.net/ajax/libs/bootstrap-icons/1.11.3/font/bootstrap-icons.min.css https://cdn.bootcdn.net/ajax/libs/localforage/1.10.0/localforage.min.js https://cdn.bootcdn.net/ajax/libs/twitter-bootstrap/5.3.3/js/bootstrap.bundle.min.js https://cdn.bootcdn.net/ajax/libs/jquery/3.7.1/jquery.min.js https://cdn.bootcdn.net/ajax/libs/socket.io/4.7.5/socket.io.min.js CDN2:[ZSTATIC.net](https://cdn.zstatic.net/) https://s4.zstatic.net/ajax/libs/font-awesome/6.6.0/css/all.min.css https://s4.zstatic.net/ajax/libs/bootstrap/5.3.3/css/bootstrap.min.css https://s4.zstatic.net/ajax/libs/bootstrap-icons/1.11.3/font/bootstrap-icons.min.css https://s4.zstatic.net/ajax/libs/localforage/1.10.0/localforage.min.js https://s4.zstatic.net/ajax/libs/bootstrap/5.3.3/js/bootstrap.bundle.min.js https://s4.zstatic.net/ajax/libs/socket.io/4.8.1/socket.io.min.js 测试环境: https://minio.51epub.com/static/css/bootstrap/5.3.3/bootstrap.min.css https://minio.51epub.com/static/css/booticons/1.11.3/bootstrap-icons.min.css https://minio.51epub.com/static/js/localcache/localforage.min.js 1. xxxx 2. xxxx #### 部署 Docker + python3.10-silm + Gunicorn + Flask部署项目 我希望创建一个Docker + python3.10-silm + Gunicorn + Flask的容器,要求: 1- 创建好的容器中使用pip的默认源为:pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple 2- 容器中的工作目录为:/flaskweb 3- 容器中的Flask项目目录为:/flaskweb 4- 将当前项目目录复制到/flaskweb目录下 5- 在容器中安装requirements.txt中的依赖 6- 要求启动时支持flask-sse组件 7- 使用Gunicorn启动Flask项目, Gunicorn的启动参数在gunicorn_conf.py文件中 请你帮我创建一个Dockerfile文件,实现上述要求。 ##### 构建镜像 docker build -t flask_web . ##### 查看构建之后的镜像 docker images ##### 使用镜像,启动容器 docker run -d -p 5000:5000 flask_web ##### 如果使用挂载的方式,可以使用下面的命令 首先,在主机上手动创建一个/home/app/wemedia目录,然后将程序复制到该目录下 保障run.py和gunicon_conf.py在/home/app/wemedia目录下 docker run -d -p 5000:5000 --name wemedia -v /home/app/wemedia:/flaskweb --restart unless-stopped flask_web ##### 重构镜像 先删除容器 docker stop wemedia && docker rm wemedia 然后删除镜像 docker rmi flask_web 然后重新构建镜像 使用容器 ID 进入 docker exec -it 256b3cb03a5a /bin/bash #### 特技 #### 其他