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\n",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()
}

爬虫有危险,须谨慎

posted @   Myuniverse  阅读(433)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示