go gocolly模块学习

Posted myuniverse

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了go gocolly模块学习相关的知识,希望对你有一定的参考价值。

package main

import(
    "fmt"
    "net/http"
    "github.com/gocolly/colly"
)

// test
func testColly(){
    // 创建collector
    c := colly.NewCollector(
        // 填写配置的地方
        // colly.AllowedDomains("hackerspaces.org","wiki.hackspaces.org"),
        colly.MaxDepth(1),
    )

    // 按照html的属性进行爬取相对应内容
    c.OnHTML("a[href]",func(e *colly.HTMLElement){
        link := e.Attr("href") // html的属性
        fmt.Printf("link found:%v->%s
",e.Text,link)
    })

    // 打印所有的数据
    c.OnHTML("*",func(e *colly.HTMLElement){
        fmt.Println("打印所有的数据",e)
    })

    // 现运行打印这部分
    c.OnRequest(func(r *colly.Request){
        fmt.Println("Visiting...",r.URL.String())
    })
    
    // 想要爬取的网站地址
    c.Visit("https://baidu.com/")
}

func getParameter(w http.ResponseWriter,r *http.Request){
    parameter := r.URL.Query().Get("url")  //获取带有参数的给请求的url
    if parameter==""{
        fmt.Println("get parameter is nill")
        return
    }
    fmt.Println("参数url的值:",parameter)
    fmt.Fprintln(w,parameter)
}

func main(){
    fmt.Println("学习gocolly库")
    testColly()
}

爬虫有危险,须谨慎

以上是关于go gocolly模块学习的主要内容,如果未能解决你的问题,请参考以下文章

go 爬虫框架 - gocolly

Golang 网络爬虫框架gocolly/colly 一

Golang 网络爬虫框架gocolly/colly 二 jQuery selector

试验一下Golang 网络爬虫框架gocolly/colly

go爬虫框架的Colly框架使用

golang代码片段(摘抄)