Go语言 如何将url的开头添加到colly链接列表

mklgxw1f  于 2022-12-07  发布在  Go
关注(0)|答案(1)|浏览(102)

我是一个新手,正在尝试用colly抓取几个网页。其中两个网页有不完整的链接,下面是代码和输出

func PaloNet() {

    c := colly.NewCollector(
        colly.AllowedDomains("security.paloaltonetworks.com"),
    )

    c.OnHTML(".list", func(e *colly.HTMLElement) {
        PaloNetlinks := e.ChildAttrs("a", "href")
        fmt.Println("\n\n PaloAlto Security: \n\n", PaloNetlinks)
    })

    c.Visit("https://security.paloaltonetworks.com/")

}

输出量:
第一部分:第一部分:第一部分:第二部分:第一部分:第二部分:第三部分:第四部分:第五部分:第六部分:第七部分:第八部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九部分:第九2022 - 0026/CVE-2022 - 0025/CVE-2022 - 0027/泛-SA-2022 - 0001/泛-SA-2022 - 0002/CVE-2022 - 0023/CVE-2022 - 0778/CVE-2022 - 22963/CVE-2022 - 0022/CVE-2021 - 44142/CVE-2022 - 0016/CVE-2022 - 0016/CVE-2022 - 2022 - 2022 - 2022 - 2022 - 00022 - 2022 - 00022 - 20022 - 202022 - 00022 - 00022 - 20022 - 202022 - 00022 - 00022 - 200022 - 0 2022 - 0011年第一季度
正如您所看到的,链接缺少"https://security.paloaltonetworks.com/"部分。

70gysomp

70gysomp1#

你可以这样做

func PaloNet() {
visitUrl := "https://security.paloaltonetworks.com"
urls := []string{}

c := colly.NewCollector(
    colly.AllowedDomains("security.paloaltonetworks.com"),
)

c.OnHTML(".list", func(e *colly.HTMLElement) {
    PaloNetlinks := e.ChildAttrs("a", "href")

    for i := 0; i < len(PaloNetlinks); i++ {
        urls = append(urls, visitUrl+PaloNetlinks[i])
    }

    fmt.Println("\n\n PaloAlto Security: \n\n", urls)
})

c.Visit(visitUrl)
}

相关问题