java抓取网页数据( 一个彩票网站为例来简单说明整体操作流程,解析html+js+css )

优采云 发布时间: 2021-12-27 06:14

  java抓取网页数据(

一个彩票网站为例来简单说明整体操作流程,解析html+js+css

)

  

  现在很多web应用和做过web项目的童鞋都知道web结果是由html+js+css组成的,html结构有一定的规范,可以通过js实现动态数据交互。

  有时,你需要抓取你感兴趣的某个网站的信息。一个网站信息必须通过某个url发送,并根据该地址发送http请求。知道这个地址后,可以得到很多网络响应,需要仔细分析。,找到你合适的地址,最后通过这个地址返回一个html给你,我们就可以拿到这个html,分析结构,解析这个结构,得到你想要的数据。

  Html的结构分析往往是复杂而繁琐的。我们可以使用java支持包:jsoup,它可以完成发送请求、解析html、获取你感兴趣的数据等功能。

  我们以一个彩票网站为例,简单说明一下整体的操作流程,分为以下几个主要步骤:

  1:根据官网,找到您感兴趣的模块:双色球

  2:分析页面,找到它的入口地址

  3:获取地址,使用jsoup发送请求,获取返回的Document对象

  4:分析Document对象,获取感兴趣的数据

  1:根据官网,找到您感兴趣的模块:双色球:

  我选择的500彩票网站:请按照以下步骤找到双色球版块。

  

  2:分析页面,找到它的入口地址

  发现右边有个下拉选择框,这是历史双色球开奖日期。改变这个值,浏览器会重新请求这个时期的彩票信息,并确定地址为:

  选择问题编号.shtml

  

  3:获取地址,使用jsoup发送请求,获取返回的Document对象

  创建一个maven项目并导入jsoup的依赖:在你的java类中,向2个地址发送请求:获取返回的页面数据:

  

  返回的html页面内容较多,这里就不贴了。下面我就直接分析这个页面(特别是每个html的结构不是一成不变的。有可能读者看到这篇文章的时候,网站已经修改了页面结构,那你需要重新分析一下。当然,估计修改本网站网页结构的可能性比较小...)

  4:分析Document对象,获取感兴趣的数据

  双色球由6个红球和1个篮球组成。通过分析网页,它是用类来表示的。网页源代码如下:

  

  通过以下代码,得到6个红球:

  

  同理,可以获得1个蓝球。

  根据这个原则,你可以得到你想要的数据:以下是我得到的数据

  

  以上是个人对java中简单抓取网页数据的分享,感兴趣的童鞋可以自己的实践一下,实践出真知。

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线