# onetu **Repository Path**: perror/onetu ## Basic Information - **Project Name**: onetu - **Description**: one兔首页, 附近推荐API, 新闻数据爬虫等等 - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2017-08-14 - **Last Updated**: 2022-05-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # one兔(python) ## 目录 * [项目说明](#项目说明) * [详细项目说明](#详细项目说明) * [API](#API) * [Crawl](#Crawl) * [dataAnalysis](#dataAnalysis) * [TextCategorization](#TextCategorization) * [tornado_api](#tornado_api) * [pyspark_recommender](#pyspark_recommender) * [del_data](#del_data) * [Script](#Script) * [项目依赖](#项目依赖) * [部署方式](#部署方式) * [pc端发帖](#pc端发帖) * [首页附近](#首页附近) * [推荐系统](#推荐系统) * [爬虫](#爬虫) * [脚本专用服务器](#脚本专用服务器) ## 项目说明 1. API 文件夹属于半废弃项目, 目前在用的有web 端发帖项目, 位于: API.indexPersonalizedRecommendation.newPost 2. Crawl 文件夹属于爬虫代码, 爬虫使用了scrapy创建, 位于: Crawl.crawls.crawls.spiders 3. Modular 文件夹已废弃 4. OtherFile 文件夹存放已废弃但仍时不时用到的项目 5. Script 文件夹中存放了一些平时可用的脚本 6. TextCategorization 文件夹, 中文分词, 以及中文分类(未实际使用) 7. dataAnalysis 文件夹 数据分析目录, 目前未使用 8. jieba_data 文件夹, 中文分词词库 9. tornado_api 目前主要的api ## 详细项目说明 #### API API.indexPersonalizedRecommendation.newPost: web 发帖业务逻辑处理模块 -> 默认端口 7070 部署: test.onetuu.com, 路径: /ftp/code_newyaer, 部署方式: screen API.indexPersonalizedRecommendation.postinst: 帖子处理模块 #### Crawl Crawl.crawls.crawls.spiders: 爬虫业务代码 -> 部署: dev.onetuu.com, 路径: /spider, 部署方式: screen, scrapyd, tornado Crawl.vimm_chrome_proxyauth_plugin: chrome 代理设置 Crawl.vimm_chrome_proxyauth_plugin_http: chrome 代理设置 #### dataAnalysis dataAnalysis.filter_analysis: 用户行为数据分析(未使用) #### TextCategorization TextCategorization.NB: 基于朴素叶贝斯文本分类 TextCategorization.text-classification-cnn-rnn-master: 基于rnn, cnn 文本分类 TextCategorization.CustomClassificationAlgorithm: 传统文本分类, #### tornado_api tornado_api.H5Main: H5 wensocket 实现小游戏 tornado_api.NativeMain: app 首页推荐, 附近推荐模块实现 -> 默认端口 8081, 部署: test.onetuu.com, 路径: /ftp/code_newyaer/, 部署方式: supervisor tornado_api.spiderMain: 爬虫web 管理模块,默认端口 8888, 部署: dev.onetuu.com, 路径: /spider/tornado_api/spiderMain, 部署方式: screen tornado_api.Tese: 测试 #### pyspark_recommender pyspark_recommender.server: 推荐系统http接口 -> 默认端口 7979, 部署: cs.onetuu.com, 路径: /home/qin, 部署方式: screen pyspark_recommender.itemBasedRecommender: 推荐系统: 基于社区推荐用户 pyspark_recommender.userBasedRecommender: 推荐系统: 基于用户推荐社区 pyspark_recommender.create_text: 推荐系统: 用戶行爲數據處理 #### del_data del_data: 定时删除帖子脚本, 使用crontab每天早上6点定时删除3月之前帖子, 部署: dev.onetuu.com, 路径: /TEST/del_data/ 部署方式: crontab #### Script ./discarded: 废弃脚本 ./operate: 运行需求脚本 ./cilck_page.py: 刷指定页面点击量脚本 ./up_image_store.py: one兔app商店图片上传server ./product: 产品需求 ./comment: 爬取评论脚本 ./remove_cate_moment.py: 删除指定标签serverv ./utils: 工具类, 设置类 ## 项目依赖 python 相关: pip: python >= 3.5 tornado >= 5.0 django >= 1.0 scrapy == 1.4.0 scrapyd == 1.2.0 scrapyd_api == 2.0.1 requests >= 2.18.4 jieba == 0.38 tensorflow == 1.4.0 pyspark == 2.2.1 pewwee == 4.0 peewee_async == 0.5.11 numpy == 1.13.1 redis == 2.10.6 pymysql == 0.7.11 oss2 == 2.3.4 github: https://github.com/QYLGitHub/peeweeMysqlPoll https://github.com/QYLGitHub/aliyun https://github.com/QYLGitHub/pymysqlpool 其他: spark == 2.7 ## 部署方式 #### pc端发帖 PC端发帖使用django + rest_framework 框架实现, 使用screen管理进程, 部署端口7070 项目部署服务器: test.onetuu.com(121.41.13.76) server应用程序路径: /ftp/code_newyaer/API/ screen进程名: 22909 #### 首页附近 首页附近使用toenaod web 框架, 使用了supervisor 来管理tornado 进程, 总计启动4个进程 分别监听了,5000, 5001, 5002, 5003, 使用nginx反向代理监听8081端口,达到负载均衡效果 tornado服务仍然支持热更新!!! 项目部署服务器: test.onetuu.com(121.41.13.76) supervisor配置文件路径: /etc/supervisord.conf server应用程序路径: /ftp/code_newyaer/tornado_api/NativeMain nginx配置文件路径: /etc/nginx/nginx.conf #### 推荐系统 推荐系统 后端采用pyspark来离线计算(一天一次, 在首页附近模块中实现了一个定时任务, 每天会定时发送http信息到推荐系统前端), 前端使用tornado作为外部命令来启动spark., torando服务使用screen来管理进程. 项目部署服务器: cs.onetuu.com(101.37.20.51) server应用程序路径: /home/qin/server/ screen进程名: 7979 #### 爬虫 使用scrapy框架来执行爬虫, 使用scrapyd调度爬虫(默认端口6800), 爬虫调度使用了一个死循环检测器, 向scrapyd 发送http请求, 实现定时调度, 爬虫运行轨迹: 调度 -> scrapyd -> scrapy -> redis -> mysql 项目部署服务器: dev.onetuu.com(121.40.201.74) 爬虫web端管理: server路径: /spider/tornado_api/spiderMain server url: http://dev.onetuu.com:8888/index screen进程名: 26070 #### 脚本专用服务器 使用tornaod部署, 包括onetu商城图片上传, 删除指定标签 项目部署服务器: dev.onetuu.com(121.40.201.74) 爬虫web端管理: server路径: /spider/Script/server.py server url: http://dev.onetuu.com:7070/ screen进程名: 24969