Rumah > pembangunan bahagian belakang > Golang > Pergi Colly - Akses URL dalam untuk gelung

Pergi Colly - Akses URL dalam untuk gelung

王林
Lepaskan: 2024-02-06 10:51:03
ke hadapan
1092 orang telah melayarinya

Go Colly - 在 for 循环中访问 URL

Kandungan soalan

Saya ada contoh di mana saya harus melawati berbilang pautan dan mengekstrak maklumat daripadanya. Masalahnya ialah apabila saya menggunakan "colly.Visit(URL)" lawatan saya meningkat. Contoh:

package main

import (
    "fmt"

    "github.com/gocolly/colly"
)

func main() {

    CATETORIES := []string{
        "cate1",
        "cate2",
        "cate3",
    }

    c := colly.NewCollector()

    for _, cate := range CATETORIES {

        c.OnRequest(func(r *colly.Request) {
            fmt.Println("Visiting categories", r.URL)
        })

        c.Visit(cate)
    }
}
Salin selepas log masuk

Ini akan mencetak:

Visiting categories http://cate1  
Visiting categories http://cate2
Visiting categories http://cate2
Visiting categories http://cate3
Visiting categories http://cate3
Visiting categories http://cate3
Salin selepas log masuk

Saya cuba memulakan colly selepas setiap lelaran dan ia berfungsi dengan baik - maka susunannya ialah: kategori akses http://cate1, kategori akses http://cate2, kategori akses http://cate3 Tetapi melakukan ini saya akan kehilangan sesi log masuk saya.. Sebarang cadangan?


Jawapan betul


Anda menambah pengendali baharu OnRequest untuk setiap lelaran gelung. Konfigurasikan pengendali di luar gelung:

func main() {

  CATETORIES := []string{
    "cate1",
    "cate2",
    "cate3",
  }

  c := colly.NewCollector()

  c.OnRequest(func(r *colly.Request) {
    fmt.Println("Visiting categories", r.URL)
  })

  for _, cate := range CATETORIES {
    c.Visit(cate)
  }
}
Salin selepas log masuk

Atas ialah kandungan terperinci Pergi Colly - Akses URL dalam untuk gelung. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan