Golang:colly 采用 Go 语言编写的 Web 爬虫框架

举报
彭世瑜 发表于 2022/09/24 23:00:41 2022/09/24
【摘要】 文档: https://go-colly.org/https://pkg.go.dev/github.com/gocolly/collyhttps://github.com/gocolly/coll...

在这里插入图片描述

文档:

安装

go get github.com/gocolly/colly

  
 
  • 1

示例

package main

import (
    "fmt"

    "github.com/gocolly/colly"
)

const USER_AGENT = "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/105.0.0.0 Safari/537.36"

func main() {
    // 创建 collector
    collector := colly.NewCollector()

    // 设置UA
    collector.UserAgent = USER_AGENT

    // 事件监听
    collector.OnRequest(func(r *colly.Request) {
        fmt.Println("url:", r.URL.String())
        // url: https://www.baidu.com/
    })

    // 解析元素
    collector.OnHTML("title", func(e *colly.HTMLElement) {
        fmt.Println(e.Text)
        // 百度一下,你就知道
    })

    // 访问网页
    collector.Visit("https://www.baidu.com/")
}


  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33

事件类型

OnRequest 请求执行之前调用

OnResponse 响应返回之后调用

OnHTML 监听执行 selector

OnXML 监听执行 selector

OnHTMLDetach,取消监听,参数为 selector 字符串

OnXMLDetach,取消监听,参数为 selector 字符串

OnScraped,完成抓取后执行,完成所有工作后执行

OnError,错误回调

  
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

请求测试:http://httpbin.org/get

参考
重磅推荐:这可能是最知名的 Go 爬虫框架

文章来源: pengshiyu.blog.csdn.net,作者:彭世瑜,版权归原作者所有,如需转载,请联系作者。

原文链接:pengshiyu.blog.csdn.net/article/details/126720337

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。