博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
colly 入门指南 ##3
阅读量:5063 次
发布时间:2019-06-12

本文共 1118 字,大约阅读时间需要 3 分钟。

使用colly之前,请确保您拥有最新的版本。有关详细信息,请参阅安装指南。

 

让我们从一些简单的例子开始。

 

首先,你需要导入Colly到你的代码库:

import "github.com/gocolly/colly"

  

收集器

Colly的主要实体是一个收集器对象。Collector管理网络通信,并负责在运行收集器作业时执行附加的回调。要使用colly,您必须初始化一个收集器:

c := colly.NewCollector()

  

回调

您可以将不同类型的回调函数附加到收集器,以控制收集作业或检索信息。查看包文档中的。

 

向收集器添加回调

c.OnRequest(func(r *colly.Request) {    fmt.Println("Visiting", r.URL)})c.OnError(func(_ *colly.Response, err error) {    log.Println("Something went wrong:", err)})c.OnResponse(func(r *colly.Response) {    fmt.Println("Visited", r.Request.URL)})c.OnHTML("a[href]", func(e *colly.HTMLElement) {    e.Request.Visit(e.Attr("href"))})c.OnHTML("tr td:nth-of-type(1)", func(e *colly.HTMLElement) {    fmt.Println("First column of a table row:", e.Text)})c.OnXML("//h1", func(e *colly.XMLElement) {    fmt.Println(e.Text)})c.OnScraped(func(r *colly.Response) {    fmt.Println("Finished", r.Request.URL)})

  

回调的调用顺序

1. OnRequest

 

在请求之前调用

 

2. OnError

 

如果请求期间发生错误,则调用

 

3.OnResponse

 

收到响应后调用

 

4. OnHTML

 

如果接收到的内容是HTML,则在OnResponse之后立即调用

 

5. OnXML

 

如果接收到的内容是HTML或XML,则在OnHTML之后立即调用

 

6. OnScraped

 

在OnXML回调之后调用

 

转载于:https://www.cnblogs.com/liujie-php/p/11570781.html

你可能感兴趣的文章
STL——配接器、常用算法使用
查看>>
第9课 uart
查看>>
Range和xrange的区别
查看>>
STL容器之vector
查看>>
无法向会话状态服务器发出会话状态请求
查看>>
数据中心虚拟化技术
查看>>
01入门
查看>>
复习文件操作
查看>>
SQL Server 使用作业设置定时任务之一(转载)
查看>>
第二阶段冲刺-01
查看>>
BZOJ1045 HAOI2008 糖果传递
查看>>
发送请求时params和data的区别
查看>>
JavaScript 克隆数组
查看>>
eggs
查看>>
一步步学习微软InfoPath2010和SP2010--第七章节--从SP列表和业务数据连接接收数据(4)--外部项目选取器和业务数据连接...
查看>>
如何增强你的SharePoint 团队网站首页
查看>>
FZU 1914 Funny Positive Sequence(线性算法)
查看>>
oracle 报错ORA-12514: TNS:listener does not currently know of service requested in connec
查看>>
基于grunt构建的前端集成开发环境
查看>>
MySQL服务读取参数文件my.cnf的规律研究探索
查看>>