独立开发日记-剑网3那些事儿

  |  
 阅读次数

起因

该项目前身其实于JX3Spider,由于贴吧的帖子出现具有不定时性,项目最初设置的8小时推送一次在时间上存在太大的间隔,如果缩短推送时间会导致Github出现很多无意义的commit,于是萌生了将该项目进行扩展,由简单的爬虫收录文件扩展为网站,并且提供在线评论、热门文章推送、今日更新、文章检索等功能,后续功能继续推中进。

前端技术栈

Bootstrao + jquery + jqueryUI + H+

界面沿用的H+ UI框架中的部分页面,主要是Bootstrap和jQuery UI,项目最初采用了requirejs进行模块依赖管理,由于单页面使用script的脚本文件排除jquery后,requirejs.mini大小差不多,考虑到性能问题保留了requrrejs配置文件的同时暂时移除了requirejs的使用。

后端技术栈

Nodejs + Express + ejs + php + mysql

初次接触express感觉非常轻量,官方API文档写得非常棒,用着也很方便,在模板引擎方面没有采用express自带的jade,选择的是ejs,与H+ UI搭配更方便。

对JX3Spider的php爬虫文件进行了重构,性能优化,同时将信息记录的目标由json文件改成mysql数据库。

同时由于服务器小水管、低配置的原因,mysql数据库与网站挂载的主机进行了分离,一定程度上提高网站的访问速度(虽然还是比较慢╮(╯▽╰)╭,毕竟廉价学生服务器)。

评论

评论方面采用多说提供的接口,免去访问者注册的同时提供带有身份标志的评论,同时提供最热文章、最新评论,提供文章推荐的功能。

爬虫

基本设置沿用剑侠情缘3网络版贴吧爬虫开发日记,对爬虫进行了重构,增加边界情况考虑,避免无意义的爬虫!

路由

形如

1
http://www.jx3818.top/article/p/1883146654/

exoress中的映射方式

1
2
3
4
router.get('/article/p/:id',function (req, res, next) {
var id = req.params.id;
...code...
})

网站:剑网三那些事儿

版本更新维护记录: JX3Spider