go爬虫框架 goquery 选择器

本文详细介绍了GoQuery库中的各种选择器用法,包括基本的选择器如标签名、ID、类选择器,以及复杂的属性选择器和过滤器。通过丰富的示例展示了如何精确地定位和筛选HTML文档中的元素。

//参考博客 https://www.flysnow.org/2018/01/20/golang-goquery-examples-selector.html#%E9%80%89%E6%8B%A9%E5%99%A8%E6%88%96%E8%BF%90%E7%AE%97


package main

import (
	"fmt"
	"github.com/PuerkitoBio/goquery"
	"log"
	"strings"
)

func HtmlElement() {
html := `<body>
				<div>DIV1</div>
				<div>DIV2</div>
				<div id="aabb">DIV3</div>
				<p id="aabb">DIV4</p>
				<div class="name">DIV5</div>
				<div lang="aabb" class="name">DIV6</div>
				<span>
					<div>DIV7</div>
				</span>
				<p>PDIV</p>
				<p></p>
				<p>PDIV1</p>
			</body>
			`

	dom,err:=goquery.NewDocumentFromReader(strings.NewReader(html))
		if err!=nil{
	log.Fatalln(err)
	}

	//基于HTML Element 元素的选择器
	//匹配标签为div的元素,Each() 是迭代器,它会循环遍历选择的节点
	dom.Find("div").Each(func(i int, selection *goquery.Selection) {
		//Text() 则是获取匹配元素集中的文本内容
		fmt.Println(selection.Te
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值