Go解析html文檔 goquery | Go


package main

import (
	"fmt"
	"log"
	"strconv"
	"strings"

	"github.com/PuerkitoBio/goquery"
)

func findByEle(htmlDoc string) {
	dom, err := goquery.NewDocumentFromReader(strings.NewReader(htmlDoc))
	if err != nil {
		log.Fatalln(err) // 輸出並退出程序
	}
	// 1.元素選擇器
	dom.Find("div").Each(func(i int, s *goquery.Selection) {
		fmt.Println("i", i, "選中的文本", s.Text())
	})
	// 2.ID選擇器
	dom.Find("#div1").Each(func(i int, s *goquery.Selection) {
		fmt.Println("i", i, "選中的文本", s.Text())
	})
	dom.Find("div#div1").Each(func(i int, s *goquery.Selection) {
		fmt.Println("i", i, "選中的文本", s.Text())
	})
	// 3.class類選擇器
	dom.Find(".c1").Each(func(i int, s *goquery.Selection) {
		fmt.Println("i", i, "選中的文本", s.Text())
	})
	dom.Find("div.c1").Each(func(i int, s *goquery.Selection) {
		fmt.Println("i", i, "選中的文本", s.Text())
	})
}

func main() {
	/*
		文檔解析庫 goquery
	*/
	htmlDoc := `
	<body>
		<div id="div1">d1</div>
		<div class="c1">d2</div>
		<span>s1</span>
	</body>
	`
	findByEle(htmlDoc)
}

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM