@
目录
- 0.代码版本
- 1. 文件说明
- 2. 流程图示
- 3. 架构图示[1]
0.代码版本
该专栏的博客当中涉及的所有代码,均为组队学习期间的版本,大概在2021年12月12日左右,某一个可能的参考版本链接如下:
https://github.com/datawhalechina/fun-rec/tree/9bcfafaae339c443cc7911b9070bf52adef9e994
1. 文件说明
PS D:\Project\fun-rec\codes\news_recsys> tree /f /a
卷 Data 的文件夹 PATH 列表
卷序列号为 7876-8A9C
D:.
+---news_rec_server
| |
| | README.md
| | 说明文件
| |
| | requirements.txt
| | 环境要求
| |
| | server.py
| | 与前端交互的部分,接受请求
| |
| +---conf
| |
| | dao_config.py
| | 设定数据库中数据库的名字和表的名字
| | 设定数据库的host和端口号,用户名及密码
| |
| | proj_path.py
| | 一些路径设置
| |
| | README.md
| | 说明文件
| |
| | stop_words.txt
| | 停用词,用来提取关键词的
| |
| +---controller
| |
| | log_controller.py
| | MVC当中控制日志的controller
| |
| | user_action_controller.py
| | MVC当中控制用户表的controller
| |
| +---dao
| | |
| | | mongo_server.py
| | | MVC当中控制MongoDB的model
| | |
| | | mysql_server.py
| | | MVC当中控制MySQL的model
| | |
| | | README.md
| | | 说明文件
| | |
| | | redis_server.py
| | | MVC当中控制Redis的model
| | |
| | \---entity
| | \--
| | logitem.py
| | 定义日志表的结构
| |
| | register_user.py
| | 定义用户注册表的结构
| |
| | user_collections.py
| | 定义用户收藏表的结构
| |
| | user_exposure.py
| | 定义用户曝光表的结构
| |
| | user_likes.py
| | 定义用户点赞表的结构
| |
| | user_read.py
| | 定义用户阅读表的结构
| |
| +---materials
| | |
| | | process_material.py
| | | 控制处理逻辑:
| | | 1.处理新闻画像
| | | 2.更新新闻动态画像
| | | 3.生成前端展示画像并备份
| | |
| | | process_user.py
| | | 控制处理逻辑:
| | | 1.存储用户曝光数据
| | | 2.更新用户画像
| | |
| | | README.md
| | | 项目说明
| | |
| | | update_redis.py
| | | 控制处理逻辑:
| | | 更新Redis数据
| | |
| | +---material_process
| | |
| | | log_process.py
| | | 处理日志,但是没有被调用
| | |
| | | news_protrait.py
| | | 将新闻加工成画像
| | |
| | | news_to_redis.py
| | | 将新闻复制到Redis
| | |
| | | README.md
| | | 说明文件
| | |
| | | utils.py
| | | 人工提取关键词的函数
| | |
| | +---news_scrapy
| | | | monitor_news.py
| | | | 爬虫监控脚本
| | | |
| | | | scrapy.cfg
| | | | 爬虫配置文件
| | | |
| | | \---sinanews
| | | |
| | | | items.py
| | | | 单条新闻的结构
| | | |
| | | | middlewares.py
| | | | 控制代理等
| | | |
| | | | pipelines.py
| | | | 持久化存储到数据库
| | | |
| | | | run.py
| | | | 定义爬虫运行的命令
| | | |
| | | | settings.py
| | | | 相关的配置
| | | |
| | | | __init__.py
| | | | 初始化文件
| | | |
| | | \---spiders
| | | \--
| | | sina.py
| | | 具体的爬虫文件
| | |
| | | __init__.py
| | | 初始化文件
| | |
| | \---user_process
| | \--
| | user_protrail.py
| | 用户画像处理文件
| |
| | user_to_mysql.py
| | 从Redis记录曝光表
| |
| +---recprocess
| | | offline.py
| | | 控制离线处理的逻辑
| | |
| | | online.py
| | | 控制在线处理的逻辑
| | | 结合server.py提供推荐服务
| | |
| | | README.md
| | | 说明文件
| | |
| | +---cold_start
| | |
| | | cold_start.py
| | | 给不同的人群准备不同的模板
| | | 其实也就是准备推荐页
| | |
| | \---recall
| | \--
| | hot_recall.py
| | 给所有的人准备热门页
| |
| \---scheduler
|
| crawl_news.sh
| 控制爬虫的执行
|
| offline_material_and_user_process.sh
| 控制离线物料的处理
| 包括新闻画像和用户画像
|
| README.md
| 说明问价
|
| run_offline.sh
| 控制离线推荐服务的运行
| 也就是生成热门页和推荐模板
|
\---news_rec_web\---Vue-newsinfo| .babelrc| 好像是转码文件| | package-lock.json| 锁定依赖包的版本| | package.json| 当前的依赖配置| | README.md| 说明文件| | vue.config.js| vue项目的配置文件| | webpack.config.js| 用于配置打包的文件|\---src| App.vue| 根组件| | index.html| 主页面| | main.js| 主脚本| | router.js| 路由脚本| | store.js| 管理用户状态的缓存|+---api| newVue.js| 好像没用| | Vue╕№╨┬░ц ╧ю─┐║═api╜╙┐┌╦╡├ў╬─╡╡ги╧ю─┐╓╨╦∙╙╨╡─╜╙┐┌╬─╡╡╥╘┤╦╬к╫╝гй-╫ю╨┬.docx| 一个API的说明文档,也没用|+---assets| | logo.png| | Vue的logo| || +---css| | index.less| | 好像没用| | | | sign.css| | 登录页面的样式| | | | tab.css| | 没用| | | | test.css| | 顶部导航栏养式| | 切换推荐和热门| || \---js| cookie.js| 应该是管理缓存的|+---components| bottomBar.vue| 底部导航栏| 切换新闻和个人页面| | common.vue| 存放全局变量| | hotLists.vue| 热门页面| | Myself.vue| 个人中心| | NewsInfo.vue| 新闻详情页面| | recLists.vue| 推荐页面| | signIn.vue| 登陆页面| | signUp.vue| 注册页面|+---images| datawhale.png| dw头像| | dw.png| dw二维码|\---lib\---mui\--饿了么的Mint UI库\-但是没有在本项目使用\+---css| icons-extra.css| mui.css| mui.min.css|+---fonts| mui-icons-extra.ttf| mui.ttf|\---jsmui.jsmui.min.js
2. 流程图示

3. 架构图示[1]

第32期组队学习重点 ↩︎