Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk mengalih keluar ruang dalam kandungan dengan perangkak golang

Bagaimana untuk mengalih keluar ruang dalam kandungan dengan perangkak golang

PHPz
PHPzasal
2023-03-30 09:10:19938semak imbas

Golang ialah bahasa pengaturcaraan yang cekap yang digunakan secara meluas dalam pelbagai pembangunan aplikasi, termasuk perangkak web. Artikel ini akan menumpukan pada cara menggunakan Golang untuk menulis perangkak dan mengalih keluar ruang daripada kandungan yang dirangkak.

  1. Merangkak halaman HTML

Perangkak perlu memulakan permintaan HTTP untuk mendapatkan halaman tapak web Coretan kod berikut boleh mencapai fungsi ini:

import (
    "fmt"
    "net/http"
)

func main() {
    response, err := http.Get("https://www.example.com")
    if err != nil {
        fmt.Println("HTTP请求错误:", err)
    }
    defer response.Body.Close()
    // 处理HTTP响应内容
}
  1. Memproses kandungan respons HTTP

Memproses kandungan respons HTTP memerlukan bantuan pustaka pihak ketiga Contohnya, gunakan pustaka goquery untuk menghuraikan halaman HTML, dan kemudian gunakan fungsi dalam pustaka strings untuk mengalih keluar ruang. Kod khusus adalah seperti berikut:

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

func main() {
    response, err := http.Get("https://www.example.com")
    if err != nil {
        fmt.Println("HTTP请求错误:", err)
    }
    defer response.Body.Close()
    // 解析HTML页面
    document, err := goquery.NewDocumentFromReader(response.Body)
    if err != nil {
        fmt.Println("解析HTML页面错误:", err)
    }
    // 获取HTML页面中的所有文本内容并去除空格
    text := strings.TrimSpace(document.Text())
    fmt.Println(text)
}

goquery perpustakaan ialah pustaka penghuraian HTML yang sangat mudah digunakan yang boleh mendapatkan sebarang elemen dalam halaman dengan mudah tanpa perlu risau tentang petunjuk dan isu pengurusan memori dalam Pergi bahasa.

  1. Tulis teks yang diproses ke fail

Selepas memproses kandungan teks, anda biasanya perlu menulisnya ke fail, yang boleh dicapai dengan kod berikut:

import (
    "fmt"
    "github.com/PuerkitoBio/goquery"
    "io/ioutil"
    "net/http"
    "strings"
)

func main() {
    response, err := http.Get("https://www.example.com")
    if err != nil {
        fmt.Println("HTTP请求错误:", err)
    }
    defer response.Body.Close()
    // 解析HTML页面
    document, err := goquery.NewDocumentFromReader(response.Body)
    if err != nil {
        fmt.Println("解析HTML页面错误:", err)
    }
    // 获取HTML页面中的所有文本内容并去除空格
    text := strings.TrimSpace(document.Text())
    // 将文本内容写入文件
    err = ioutil.WriteFile("output.txt", []byte(text), 0644)
    if err != nil {
        fmt.Println("写入文件错误:", err)
    }
}
  1. Ringkasan

Di atas ialah cara menggunakan Golang untuk menulis perangkak dan mengalih keluar ruang daripada kandungan yang dirangkak. Dapatkan halaman melalui permintaan HTTP, gunakan pustaka goquery untuk menghuraikan HTML, kemudian gunakan pustaka strings untuk mengalih keluar ruang dan akhirnya tulis hasilnya pada fail. Menulis perangkak yang cekap memerlukan pengalaman, tetapi menggunakan Golang membolehkan pembangun menulis perangkak web yang cekap dengan mudah.

Atas ialah kandungan terperinci Bagaimana untuk mengalih keluar ruang dalam kandungan dengan perangkak golang. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn