JSOUP的简介与使用
什么是Jsoup
简单来说jsoup可以解析某个URL地址,以及html的解析器,
(1)从一个 URL,文件或字符串中解析HTML;
(2)使用DOM或CSS选择器来查找、取出数据;
(3)可操作HTML元素、属性、文本;
maven配置
在pom.xml中复制下面依赖即可
<dependency>
<groupId>org.jsoup</groupId>
<artifactId>jsoup</artifactId>
<version>1.11.3</version>
</dependency>
举个例子
Document doc = Jsoup.connect("http://datachart.500.com/ssq/history/newinc/history.php?start=" + start + "&end=" + end)
.get();
Element masthead = doc.select("div.chart").first(); // class等于masthead的div标签
//每一期开奖号
Elements items = masthead.select("tr.t_tr1");
上面这一段是获取彩票网站双色球历史开奖数据的核心部分,
(1)、connect(),中需要写入你要获取的网址地址,创建一个新的 Connection
(2)、.get()获取他的html文本内容,因为此网站是get请求,如果访问的网址是post请求那么使用.post()
(3)、start,end为开始期数以及最终期数,此处是get所有使用拼接方式接口
,如果是post请求,那么.data(“start”, “xxx”)
(4)、此网站不需要用户登陆即可访问,如果网站需要用户登陆后才能进行访问,那么本地登陆后,找到自己对应的cookie ,使用.cookie(“auth”, “token”)便可获取指定网站html的信息
(5)、获取到doc,使用 doc.select()来获取元素,进行进一步解析,便可获取每一期的开奖号
ps:若是connect,链接不到指定地址那么将出现错误将会抛出异常
使用jsoup获取到数据后,使用echarts画个图表
折线图:散点图:
我是没看出啥规律,纯粹熟悉下技术吧
解析一个HTML文档
从字符串解析
String html = "<html><head><title>First parse</title></head>" + "<body><p>Parsed HTML into a doc.</p></body></html>";
<!-- 解析之后可以用Document的方法,拿出html中需要的数据 -->
Document doc = Jsoup.parse(html);
附上一个jsoup各种获取元素方法的说明,遇到不知道怎么获取元素的看下就行
http://www.codedq.net/blog/articles/329.html