网页内容解析库

go-enriche是一个独立的Go库,用于获取网页、提取文章文本、解析结构化数据(JSON-LD/Microdata)以及搜索上下文。

  • by anatolykoptev
  • Go
  • 本地部署
  • 更新于
在 GitHub 查看 anatolykoptev/go-enriche

使用说明

去丰富

用于web内容丰富的独立Go库:获取页面、提取文章文本、解析结构化数据(JSON-LD/Microdata)、搜索上下文。

状态

第一阶段完成——提取/结构化/打包就绪。

包裹

包装 用途
extract/ 文章文本(trafilatura)、事实(结构化)→正则表达式级联),og:图像,日期
structured/ 类型schema.org解析:地点、文章、事件、组织
fetch/ 带状态检测、隐形、单次飞行的HTTP获取(第2阶段)
search/ 网络搜索上下文(DDG、Startpage、Brave、谷歌提供商)
cache/ 缓存接口+内存/Rdis/分层(第3阶段)

用法

import (
    "github.com/anatolykoptev/go-enriche/extract"
    "github.com/anatolykoptev/go-enriche/structured"
)

// Extract article text
result, _ := extract.ExtractText(reader, pageURL)
fmt.Println(result.Content, result.Title)

// Extract structured facts (JSON-LD → Microdata → regex cascade)
facts := extract.ExtractFacts(html, pageURL)
fmt.Println(facts.PlaceName, facts.Phone)

// Parse schema.org directly
data, _ := structured.Parse(reader, "text/html", pageURL)
if place := data.FirstPlace(); place != nil {
    fmt.Println(place.Name, place.Address)
}

// Extract og:image
img := extract.ExtractOGImage(html)

许可证

麻省理工学院