Colly - 简单快速的 Web 爬虫框架


Apache 2.0
跨平台
Google Go

软件简介

Colly 是一个采用 Go 语言编写的 Web 爬虫框架,旨在提供一个能够写任何爬虫/采集器/蜘蛛的简洁模板。通过 Colly
,你可以轻松从网站中提取结构化的数据,然后进行数据挖掘、处理或归档。

项目特性

  • 清晰明了的 API

  • 快速(单个内核上的请求数大于1k)

  • 管理每个域的请求延迟和最大并发数

  • 自动 cookie 和会话处理

  • 同步/异步/并行抓取

  • 高速缓存

  • 自动处理非 Unicode 编码

  • 支持 Robots.txt

  • 支持 Google App Engine

  • 通关环境变量进行配置

  • 可扩展

示例

func main() {
    c := colly.NewCollector()

    // Find and visit all links
    c.OnHTML("a[href]", func(e *colly.HTMLElement) {
        e.Request.Visit(e.Attr("href"))
    })

    c.OnRequest(func(r *colly.Request) {
        fmt.Println("Visiting", r.URL)
    })

    c.Visit("http://go-colly.org/")
}