JSoup+htmlunit爬取分页组件中的数据
业务需求场景
爬取XX网站中的球队数据-球队的比赛赛程(所有赛程放在一个分页主件中的)
这里不像传统的分页页面,需要传入一个page页码再去请求,然后再去爬取table 中的数据
解决思路 利用 htmlunit 去模拟点击事件(这里指点击下一页),循环点击去取到每一页的结果(效率低,建议后面存缓存或者入库)
分析页面:
我们可以发现数据是放在一个id=schedules-table table标签里。这样就很好取了
因为这边是取1-5页的数据就可以了。所以博主分了两部分 第一页。JSoup传统取
2-5页htmlunit去取。
代码:
@RequestMapping("/teamMatchs")
public List teamMatchs(@RequestBody JSONObject jsonObject) throws Exception{
String str= jsonObject.getString(“teamId”);
String href=str.substring(str.lastIndexOf("/")+1);
String url=“