GoQuery 响应代码

GoQuery Response Code

在 GoQuery 中,如果我创建如下代码片段:

    doc, err := goquery.NewDocument(s)
    if err != nil {
        log.Fatal(err)
    }                 

其中 s 是有效的 url,我可以看到错误字符串,但是如果页面返回 403,我该如何找出并停止而不是让我的代码 运行?

有没有办法使用 Goquery 找到 http 响应?

我认为 NewDocument 不会让您有机会根据状态代码进行保释,但您可以改用 NewDocumentFromResponse。例如:

res, err := http.Get(url)
if err != nil {
    log.Fatal(err)
}

// Check for a 200 status (or a non-403, or whatever you want)
if res.StatusCode == 200 {
    doc, err := goquery.NewDocumentFromResponse(res)
    if err != nil {
        log.Fatal(err)
    }
    // ...
}