您现在的位置是:首页 >技术杂谈 >[Golang] 爬虫实战-用多层嵌套结构体去接收多层嵌套数据网站首页技术杂谈
[Golang] 爬虫实战-用多层嵌套结构体去接收多层嵌套数据
?一个不甘平凡的普通人,致力于为Golang社区和算法学习做出贡献,期待您的关注和认可,陪您一起学习打卡!!!???
?专栏:算法学习
?专栏:Go实战
?个人主页:个人主页
今天在用go爬取百度过程中,爬到数据很杂,想把写入结构体中,爬到的数据如下:
map[data:map[endRow:0 hasNextPage:true hasPreviousPage:false isFirstPage:false isLastPage:false list:[map[education: f
avoriteFlag:false hotFlag:true interviewDate:6月起 jobId:8a817e65-414d-408b-9c9e-63b5dd970b22 name:2024AIDU-搜索产品研
发方向(J58555) orgName: postId:14717dd9-fb72-4c54-a8ab-dcd8fd14a35b postType:技术 projectType:AIDU项目 publishDate:202
3-05-08 recruitNum:0 serviceCondition:-计算机相关专业,优秀硕士及博士学历,有互联网实习经历优先
-精通Linux/Unix平台上的编程,熟练使用PHP/C++/golang/Python任一种语言进行开发
-熟悉mysql,具有数据库设计和优化能力,熟悉常用nosql系统(redis、mongodb等至少一种)
-具有扎实的计算机基础,算法设计/数据结构能力,有系统分析和设计的项目经验;
-学习能力和逻辑思维强,具备较强的分析问题和解决问题的能力
-有较强的产品理解,能从技术角度推动产品优化
-熟悉PHP/ C++/golang/Python 多门语言者或者有检索系统项目经验者优先
-同时面向愿意转换技术栈的其他语言同学
毕业时间:2023年9月-2024年8月
工作地点:北京
招聘部门:搜索技术平台研发部 updateDate:2023-05-08 workContent:-负责搜索产品的服务端研发工作
-参与搜索整体研发效能和稳定性的提升工作
-负责优化搜索垂类在线检索系统,参与服务架构设计,独立完成业务需求分析和软件设计
-负责线上复杂性并发问题的解决 workPlace:北京市 workYears: writeExaminationDate:无笔试]] navigateFirstPage:0 navigateLa
stPage:0 navigatePages:0 nextPage:0 pageNum:1 pageSize:1 pages:83 prePage:0 size:0 startRow:0 total:83] status:ok]
实例:看起来非常恶心,不用怕,当数据嵌套的时候,我们锁定我们想要的数据,然后去一层一层定义结构体,
定义三层结构体,这里我就不详细说了,哥们自己分析一下代码吧,有什么不理解,评论区打出来,看到会回复。
package Baidu
type Contont struct {
Code string `json:"status"`
Data Kind `json:"data"`
}
type Kind struct {
List []Baidu `json:"list"`
}
type Baidu struct {
Education string `json:"education"` //学历
InterviewDate string `json:"interviewDate"` //面试日期
JobName string `json:"name"` //工作名字
Posttype string `json:"postType"` //类型
ProjectType string `json:"projectType"` //招募方式
PublishDate string `json:"publishDate"` // 发布时间
Context string `json:"serviceCondition"` //工作要求
WorkContent string `json:"workContent"` //工作内容
WorkPlace string `json:"workPlace"` //工作地点
WriteExaminationDate string `json:"writeExaminationDate"` //是否笔试
}