首页 > 解决方案 > 我如何在 Go 中过滤这个的输出

问题描述

我正在尝试过滤此终端输出,但我不确定如何执行此操作。我尝试将输出放入切片中,但它们输出单独的切片,我不确定如何将这些切片连接在一起制作一个切片。在搜索过滤输出时我没有发现任何有用的东西,所以我希望有人能给我一个解决方案。我想得到//abs.twimg.com

func main() {
    profileURL := "url"
    resp, err := soup.Get(profileURL)
    check("Couldn't send GET request:", err)

    parse := soup.HTMLParse(resp)

    find := parse.Find("head").FindAll("link")
    for _, i := range find {
        links := []string{i.Attrs()["href"]}
        log.Println(links)
    }
}

输出:

2020/06/09 08:54:55 [//abs.twimg.com  ]
2020/06/09 08:54:55 [//api.twitter.com  ]
2020/06/09 08:54:55 [//pbs.twimg.com  ]
2020/06/09 08:54:55 [//t.co  ]
2020/06/09 08:54:55 [//video.twimg.com  ]
2020/06/09 08:54:55 [//abs.twimg.com  ]
2020/06/09 08:54:55 [//api.twitter.com  ]
2020/06/09 08:54:55 [//pbs.twimg.com  ]
2020/06/09 08:54:55 [//t.co  ]
2020/06/09 08:54:55 [//video.twimg.com  ]
2020/06/09 08:54:55 [https://abs.twimg.com/responsive-web/web/polyfills.604422d4.js  ]
2020/06/09 08:54:55 [https://abs.twimg.com/responsive-web/web/vendors~main.55bd4704.js  ]
2020/06/09 08:54:55 [https://abs.twimg.com/responsive-web/web/i18n-rweb/en.15808594.js  ]
2020/06/09 08:54:55 [https://abs.twimg.com/responsive-web/web/i18n-horizon/en.d212af84.js  ]
2020/06/09 08:54:55 [https://abs.twimg.com/responsive-web/web/main.cc767dc4.js  ]
2020/06/09 08:54:55 [/manifest.json  ]

标签: go

解决方案


我希望这有帮助!

import (
        "log"
        "strings"
)

func main() {
    profileURL := "url"
    resp, err := soup.Get(profileURL)
    check("Couldn't send GET request:", err)

    parse := soup.HTMLParse(resp)

    find := parse.Find("head").FindAll("link")
    filter := make([]string, 0)
    for _, i := range find {
        // map[string]string
        if strings.Contains(i.Attrs()["href"], "//abs.twimg.com") {
                filter = append(filter, i.Attrs()["href"])
        }
    }
    log.Println(filter)
}

推荐阅读