2026-04-20 19:08:15 +08:00
2026-04-12 04:38:28 +08:00
2026-04-20 18:26:54 +08:00
2026-04-20 18:26:54 +08:00
2026-04-20 18:26:54 +08:00
2026-04-12 04:24:35 +08:00
2026-04-12 03:20:48 +08:00
2026-04-08 17:48:05 +08:00
2026-04-20 18:26:54 +08:00
2026-04-09 17:03:10 +08:00
2026-04-20 18:26:54 +08:00
2026-04-20 19:08:15 +08:00
2026-04-20 18:26:54 +08:00
2026-04-11 19:44:51 +08:00
up
2026-04-08 23:07:07 +08:00
2026-04-10 16:53:53 +08:00
2026-04-20 18:26:54 +08:00
2026-04-20 18:26:54 +08:00
2026-04-12 04:24:35 +08:00
2026-04-20 18:26:54 +08:00
2026-04-20 18:26:54 +08:00

sese-engine Go 重构版

Python 原版的 Go 语言重构,使用标准英文命名,单二进制部署。

目录结构

sese-engine-go/
├── main.go              # 主入口,goroutine 启动所有模块
├── go.mod
├── config/
│   └── config.go        # 全局配置参数
├── storage/
│   ├── types.go         # 核心数据类型定义
│   └── store.go         # Redis + MySQL 存储层
├── crawler/
│   ├── crawler.go       # BFS 爬虫调度
│   └── fetcher.go       # HTTP 获取 + robots.txt + 限流
├── parser/
│   └── parser.go        # HTML 解析
├── analyzer/
│   └── analyzer.go      # 分词 + 关键词权重 + 语言检测
├── search/
│   └── server.go        # 搜索 API + 收获服务
├── backlink/
│   └── backlink.go      # 反向链接计算
└── info/
    └── info.go          # 繁荣表 / 调整表 / 屏蔽词

依赖项

Go 包 用途
github.com/yanyiwu/gojieba 中文分词
github.com/pemistahl/lingua-go 语言检测(内置模型)
github.com/redis/go-redis/v9 Redis 客户端(高性能内存存储)
github.com/go-sql-driver/mysql MySQL 驱动(持久化存储)
github.com/andybalholm/brotli Brotli 压缩
golang.org/x/net/html HTML 解析

构建与运行

# 下载依赖(需要 CGo 编译器,用于 gojieba
go mod tidy

# 构建
go build -o sese-engine .

# 运行
./sese-engine --storage ./savedata --entry https://zh.wikipedia.org/

架构说明

  • Redis:高性能内存存储,用于实时索引读写
  • MySQL:持久化存储,用于数据备份和复杂查询
  • 内存聚合:写入先到 Redis,定期合并到 MySQL

注意事项

  1. CGo 依赖gojieba 需要 C/C++ 编译器(gcc/clang)。
  2. Redis + MySQL:需要提前部署并配置连接参数。
  3. 配置文件config/config.yml 中配置数据库连接信息。
S
Description
No description provided
Readme
137 MiB
Languages
Go 98.4%
Shell 1.6%