MCPcopy
hub / github.com/tophubs/TopList

github.com/tophubs/TopList @main sqlite

repository ↗ · DeepWiki ↗
303 symbols 688 edges 17 files 28 documented · 9%
README

今日热榜

今日热榜是一个获取各大热门网站热门头条的聚合网站,使用Go语言编写,多协程异步快速抓取信息,预览:http://mo.fish

DeepinScrot-1130.png

安装教程

  1. 编译

cd {root_path} # 项目根目录 go build -o ./App/GetHot App/GetHot.go go build -o ./App/Server App/Server.go

  1. 创建数据库,如 news,执行database.sql创建表,更改配置文件Config/mysql.toml

  2. 编辑文件 Html/js/blog/globalConfig.js

const ServerIp = 'http://{your_domain}:9090' // 替换成服务器域名

  1. 部署定时任务/App/GetHot.go爬虫程序,且以守护进程的方式执行Server.go

crontab -e # 添加一行 0 */1 * * * {root_path}/App/GetHot nohup {root_path}/App/Server &

  1. 测试

  2. 打开http://{yourdomain}:9090/ 即可访问今日热榜

目录说明

TopList/
├── App
│   ├── GetHot.go   爬虫程序需要Cron定时任务执行
│   └── Server.go   Server程序需要守护进程的方式执行
├── Common
│   ├── Db.go       DB组件
│   └── Message.go  
├── Config
│   ├── MySql.go    mysql配置读取组件
│   └── mysql.toml  mysql配置文件需要手动配置
├── Cron
│   ├── GetHot.sh   爬虫Cron程序可以是每小时执行一次
│   └── README.md
├── database.sql    数据库建表文件
├── Html
│   ├── css
│   ├── hot.html    前端热榜展示网页
│   └── js
│  
└── README.md

API说明

获取所有类型

  • Method: GET
  • URL: https://www.tophub.fun:8888/GetAllType
  • Param:无
  • 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: GET
  • URL: https://www.tophub.fun:8888/v2/GetAllInfoGzip?id=59&page=0
  • Param:id
  • Body:
{
    "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
    }
}

使用说明

  1. fork 项目

参与贡献

  1. Fork 本项目
  2. 新建 Feat_xxx 分支
  3. 提交代码
  4. 新建 Pull Request

Core symbols most depended-on inside this repo

Close
called by 30
Common/Db.go
checkErr
called by 18
Common/Db.go
m
called by 14
Html/js/modernizr.custom.js
z
called by 7
Html/js/modernizr.custom.js
e
called by 6
Html/js/modernizr.custom.js
g
called by 6
Html/js/modernizr.custom.js
l
called by 5
Html/js/modernizr.custom.js
GbkToUtf8
called by 5
App/GetHot.go

Shape

Function 253
Method 44
Struct 6

Languages

TypeScript80%
Go20%

Modules by API surface

Html/js/2D/L2Dwidget.0.min.js77 symbols
Html/js/jquery-2.1.3.min.js64 symbols
App/GetHot.go34 symbols
Html/js/2D/L2Dwidget.1.min.js.js27 symbols
Html/js/modernizr.custom.js25 symbols
Common/Db.go17 symbols
Html/js/blog/hot.js13 symbols
Html/js/uikit.min.js9 symbols
Html/js/bootstrap.min.js8 symbols
Html/js/blog/mine.js6 symbols
Html/js/script.js4 symbols
Html/js/pace.min.js4 symbols

Dependencies from manifests, versioned

golang.org/x/textv0.3.2 · 1×

For agents

$ claude mcp add TopList \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact