请稍等 ...
×

采纳答案成功!

向帮助你的同学说点啥吧!感谢那些助人为乐的人

获取用户详细信息被禁止

老师你好,在获取用户信息的时候,网页返回的是

403 Forbidden

403 Forbidden


nginx

被禁止了,没法测试了,这个怎么办呢

正在回答

3回答

Request 添加 header,header 中要有 User-Agent 字段。

具体做法如下:

把 Fetcher 的下面这一行:

resp, err := http.Get(url)

改成:

req, err := http.NewRequest("GET", url, nil)
if err != nil {
  return nil, err
}
req.Header.Add("User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/71.0.3578.87 Safari/537.21")

client := http.Client{
  CheckRedirect: func(req *http.Request, via []*http.Request) error {
     fmt.Println("Redirect:", req)
     return nil
  },
}
resp, err := client.Do(req)

可以参考 net/http/client.go 关于 Get 函数的说明:

// ...

// To make a request with custom headers, use NewRequest and
// DefaultClient.Do.
func Get(url string) (resp *Response, err error) {
  return DefaultClient.Get(url)

2 回复 有任何疑惑可以回复我~
  • 提问者 一个橙子吧 #1
    非常感谢!
    回复 有任何疑惑可以回复我~ 2019-02-11 13:38:29
  • 非常感谢,我也遇到了这个问题
    回复 有任何疑惑可以回复我~ 2019-03-31 09:46:14
  • 成功了,感谢
    回复 有任何疑惑可以回复我~ 2019-04-18 23:29:27
慕少1715565 2022-01-18 14:53:25

修改header如果还拿不到,建议可以从 https://www.zhenai.com/zhenghun/shanghai 城市页面拉取,不用再访问用户详情页;城市页面有用户信息,改动下代码

0 回复 有任何疑惑可以回复我~
qq_白澤_0 2020-08-19 13:18:24

更改useragent还是会报错202。应该是反扒机制的问题。试试用代理。

0 回复 有任何疑惑可以回复我~
问题已解决,确定采纳
还有疑问,暂不采纳
意见反馈 帮助中心 APP下载
官方微信