golang 前程无忧 51job 爬虫

请求参数分析

https://search.51job.com/list/000000,000000,0000,00,9,99,go,2,1.html?lang=c&postchannel=0000&workyear=99&cotype=99&degreefrom=99&jobterm=99&companysize=99&ord_field=0&dibiaoid=0&line=&welfare=

参数名含义
000000城市
000000城市下的区
0000
00
9
99月薪范围
go搜索词
22 搜全文 1 搜公司
1.html页码
postchannel
workyear工作年限
cotype公司性质
degreefrom学历要求
jobterm全职兼职实习
companysize公司规模
ord_field排序
dibiaoid
line
welfare

通过参数分析,发现需要关注的参数只有页码,还有搜索词,其它按原来的就行。

获取数据

第一次请求发现返回的html并不是我我们所看到的那样,后来经过观察发现,数据都放在js代码,所以只要把这部分数据取出来就行

在这里插入图片描述

用goquery库取出来之后,发现换页的时候会有xhr异步请求,那就不需要这么麻烦了呀,直接请求api就行了。 但是用postman请求时返回的确实html页面而不是json数据,经过url对比,document的url和xhr的url是一样的。但是经过发现他是通过请求头Accept来区分的

在这里插入图片描述

加上这个请求头之后就可以得到数据了,然后封装成代码,代码已经放到GitHub

https://github.com/louzhu123/gcrawl

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值