package util import ( "bytes" "fmt" "github.com/PuerkitoBio/goquery" "io/ioutil" "log" "net/http" "net/url" ) var BaseHost = "https://arkids.net/items" const ProxyHost = "http://127.0.0.1:7890" var ArkItemIDs = make([]ArkItemID, 0) func GetArkIds(u string, page int) error { fmt.Println("page:", u) req, err := http.NewRequest("GET", u, nil) if err != nil { log.Fatalf("创建请求失败: %v", err) return err } proxy, err := url.Parse(ProxyHost) if err != nil { log.Fatalf("Failed to parse proxy URL: %v", err) return err } transport := &http.Transport{ Proxy: http.ProxyURL(proxy), } client := &http.Client{Transport: transport} resp, err := client.Do(req) if err != nil { log.Fatalf("发送请求失败: %v", err) return err } defer resp.Body.Close() responseBody, err := ioutil.ReadAll(resp.Body) if err != nil { log.Fatalf("读取响应正文失败: %v", err) return err } // 使用 goquery 解析 HTML 内容 doc, err := goquery.NewDocumentFromReader(bytes.NewReader(responseBody)) if err != nil { log.Fatalf("解析 HTML 失败: %v", err) return err } var sign = 0 // 查找所有