怎么解决Go语言做爬虫状态码返回418的问题
发表于:2025-01-19 作者:千家信息网编辑
千家信息网最后更新 2025年01月19日,这篇文章主要介绍怎么解决Go语言做爬虫状态码返回418的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!背景 在使用Go语言做爬虫时,使用http.Get(url)去获取网页
千家信息网最后更新 2025年01月19日怎么解决Go语言做爬虫状态码返回418的问题
这篇文章主要介绍怎么解决Go语言做爬虫状态码返回418的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
背景
在使用Go语言做爬虫时,使用http.Get(url)
去获取网页内容,状态码返回404,Body体为空。
原因分析
http.Get(url)
是不需要设置header属性的http请求,比较简单快捷,但状态码返回418,表明我们需要设置其header属性,那么我们可以使用http.NewRequest
,在设置其header属性即可~
代码部分
func main7() { client := &http.Client{} url := "https://movie.douban.com/top250?start=0&filter=" reqest, err := http.NewRequest("GET", url, nil) //设置header属性 reqest.Header.Add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/79.0.3945.130 Safari/537.36 OPR/66.0.3515.115") if err!=nil { fmt.Println(err) return } response, _ := client.Do(reqest) defer response.Body.Close() buf := make([]byte,4096) var result string for { n,err:=response.Body.Read(buf) if n == 0 { fmt.Println("读取网页完成") break } if err!=nil && err!=io.EOF { fmt.Println("resp body err",err) return } result += string(buf[:n]) //打印读取的网页 fmt.Println(result) }}
以上是"怎么解决Go语言做爬虫状态码返回418的问题"这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注行业资讯频道!
状态
属性
爬虫
语言
内容
网页
问题
篇文章
代码
价值
兴趣
原因
原因分析
小伙
小伙伴
更多
知识
背景
行业
资讯
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
网络安全委员会议题
浙江宁波浪潮服务器云服务器
天夏科技互联网大会
男朋友电话总是无法接通服务器
电网 实时数据库应用
网络安全检测技术要求
石龙手机软件开发
数据库安全设置与保护实验
套房设计软件开发
重庆苹果手机软件开发
株洲服务器软件工程师大专学校
数据库管理系统产生于二十世纪多少年代
软件开发 编程语言
物联网上位机软件开发
医疗数据库销售
物业软件开发原理
软件开发从业共识
重庆浩泽网络技术有限公司
重庆软件开发工程师招聘
信息技术网络技术公开课
私有云软件开发
数据库应用开发技术课程
互联网络技术服务公司
开放性家庭网络安全吗
深圳网络安全人才薪酬排名
河南洲冠网络技术有限公司
网络技术专业问答题
证监会网络安全事件分级
企业一般用什么软件开发c语言
香港动态服务器