今日热榜是一个获取各大热门网站热门头条的聚合网站,使用Go语言编写,多协程异步快速抓取信息,预览:http://mo.fish
安装教程编译
cd {root_path} # 项目根目录go build -o ./App/GetHot App/GetHot.gogo build -o ./App/Server App/Server.go创建数据库,如 news,执行database.sql创建表,更改配置文件Config/mysql.toml
编辑文件 Html/js/blog/globalConfig.js
const ServerIp = 'http://{your_domain}:9090' // 替换成服务器域名部署定时任务/App/GetHot.go爬虫程序,且以守护进程的方式执行Server.go
crontab -e # 添加一行 0 */1 * * * {root_path}/App/GetHotnohup {root_path}/App/Server &测试
打开http://{yourdomain}:9090/ 即可访问今日热榜目录说明TopList/├── App│ ├── GetHot.go爬虫程序需要Cron定时任务执行│ └── Server.goServer程序需要守护进程的方式执行├── Common│ ├── Db.goDB组件│ └── Message.go ├── Config│ ├── MySql.gomysql配置读取组件│ └── mysql.toml mysql配置文件需要手动配置├── Cron│ ├── GetHot.sh爬虫Cron程序可以是每小时执行一次│ └── README.md├── database.sql数据库建表文件├── Html│ ├── css│ ├── hot.html前端热榜展示网页│ └── js│ └── README.mdAPI说明获取所有类型Method: GETURL: https://www.tophub.fun:8888/GetAllTypeParam:无Body:{"Code":0,"Message":"获取数据成功","Data":[{"id":"1","sort":"63908","title":"知乎"},{"id":"2","sort":"21912","title":"虎扑"},{"id":"6","sort":"11707","title":"天涯"},{"id":"7","sort":"12546","title":"知乎日报"},]}获取具体类型热榜数据Method: GETURL:https://www.tophub.fun:8888/v2/GetAllInfoGzip?id=59&page=0Param:idBody:{"Code":0,"Message":"获取数据成功","Data":{"data":[{"id":1327371,"CreateTime":1579487422,"commentNum":0,"approvalNum":0,"Title":"180W 买了个小破房,月供 7500 多,压力山大","hotDesc":"200条评论","Url":"https://www.v2ex.com/t/639366#reply200","imgUrl":"","isRss":"","is_agree":0,"TypeName":"社区"},{"id":1326304,"CreateTime":1579483806,"commentNum":0,"approvalNum":0,"Title":"口罩(N95) 目前应该买哪个? 有研究过得推荐一下?","hotDesc":"106条评论","Url":"https://www.v2ex.com/t/639343#reply106","imgUrl":"","isRss":"","is_agree":0,"TypeName":"社区"},],"page":10}}使用说明fork 项目参与贡献Fork 本项目新建 Feat_xxx 分支提交代码新建 Pull Request