使用jsoup解析html页面内容案例
- public String getFaGuiKuTitles(String type, int page) {
- String href = "http://info.qd-n-tax.gov.cn/NewFaGuiKu/"+type+"/";
- String baseUrl = href + "index";
- int no = 0;
- String msg = "";
- if(page>0){
- baseUrl = baseUrl + "_"+page;
- }
- baseUrl += ".htm";
- int totalPage = 0;
- List<FaGui> list = new ArrayList<FaGui>();
- try {
- URL url = new URL(baseUrl);
- org.jsoup.nodes.Document doc = Jsoup.parse(url, 10000);
- org.jsoup.nodes.Element table = doc.select("table").get(0);
- org.jsoup.nodes.Element tbody = table.select("tbody").get(0);
- org.jsoup.select.Elements rows = tbody.select("tr");
- int len = rows.size();
- for (int i = 0; i < len; i++) {
- org.jsoup.select.Elements cols = rows.get(i).select("td");
- FaGui fg = new FaGui();
- fg.setTitle(cols.get(0).text());
- fg.setDate(cols.get(1).text());
- if(cols.size()>2){
- fg.setFwzh(cols.get(2).text());
- }
- org.jsoup.nodes.Element a = cols.get(0).select("a").get(0);
- fg.setHref(a.attr("href").replaceFirst("./", href));
- list.add(fg);
- }
- //翻页信息
- String pager = doc.getElementsByClass("pager").get(0).html();
- int start = pager.indexOf("(")+1;
- int end = pager.indexOf(",");
- pager = pager.substring(start, end);//截取页面中的总页数
- if(pager.matches("\\d+")){
- totalPage = Integer.parseInt(pager);
- }
- no = 1;
- msg = "SUCCESS";
- log.info("获取税收法规库标题内容", "getFaGuiKuTitles");
- } catch (MalformedURLException ex) {
- Logger.getLogger(LocalServiceImpl.class.getName()).log(Level.SEVERE, null, ex);
- msg = "获取税收法规库标题内容:baseUrl"+baseUrl+"不可用,ex:"+ex;
- log.error(msg, "getFaGuiKuTitles");
- } catch (IOException ex) {
- Logger.getLogger(LocalServiceImpl.class.getName()).log(Level.SEVERE, null, ex);
- msg = "获取税收法规库标题内容:IO异常,ex:"+ex;
- log.error(msg, "getFaGuiKuTitles");
- }
- return ResultUtil.getResult(no, msg, list,totalPage,page);
- }
使用jsoup解析html页面内容案例的更多相关文章
- Android开发探秘之三:利用jsoup解析HTML页面
这节主要是讲解jsoup解析HTML页面.由于在android开发过程中,不可避免的涉及到web页面的抓取,解析,展示等等,所以,在这里我主要展示下利用jsoup jar包来抓取cnbeta.com网 ...
- jsoup 解析html 页面数据
我html 页面元素: /html/body/table[2]/tbody/tr[1]/td/table/tbody/tr[1]/td[2]/font/html/body/table[2]/tbody ...
- Android中利用jsoup解析html页面
学习jsoup :jsoup学习网站 Android 中使用: 添加依赖 implementation 'org.jsoup:jsoup:1.10.1' 直接上代码: package com.load ...
- XML解析——Jsoup解析器
一.Jsoup解析器快速入门案例 Docement对象,文本对象,包含着各个Dom树结构 1.引入Jsoup解析器的jar包放在lib文件夹下后,写java代码 其中, 二.Jsoup对象 1.Jso ...
- php 获得汇率(解析页面内容获得指定数据)
首先贴出原文链接:https://jingyan.baidu.com/article/922554465bf115851748f45f.html 方法如下: function getRate($fro ...
- jsoup解析页面
package com.java.jsoup; /** * jsoup解析网页 * @author nidegui * @version 2019年4月29日 下午5:12:02 * */ impor ...
- Java爬虫系列三:使用Jsoup解析HTML
在上一篇随笔<Java爬虫系列二:使用HttpClient抓取页面HTML>中介绍了怎么使用HttpClient进行爬虫的第一步--抓取页面html,今天接着来看下爬虫的第二步--解析抓取 ...
- Android利用Jsoup解析html 开发网站客户端小记。
这些天业余时间比较多,闲来无事,想起了以前看过开发任意网站客户端的一篇文章,就是利用jsoup解析网站网页,通过标签获取想要的内容.好了废话不多说,用到的工具为 jsoup-1.7.2.jar包,具体 ...
- 一步步教你为网站开发Android客户端---HttpWatch抓包,HttpClient模拟POST请求,Jsoup解析HTML代码,动态更新ListView
本文面向Android初级开发者,有一定的Java和Android知识即可. 文章覆盖知识点:HttpWatch抓包,HttpClient模拟POST请求,Jsoup解析HTML代码,动态更新List ...
随机推荐
- MVC中各类文件
sln:解决方案文件,为解决方案资源管理器提供显示管理文件的图形接口所需的信息. .csproj:项目文件,创建应用程序所需的引用.数据连接.文件夹和文件的信息. .aspx:Web 窗体页由两部分组 ...
- oracle的shutdown命令有几种参数
SHUTDOWN NORMAL:不允许新的连接.等待会话结束.等待事务结束.做一个检查点并关闭数据文件.启动时不需要实例恢复.SHUTDOWN TRANSACTIONAL:不允许新的连接.不等待会话结 ...
- node.js环境配置(angularjs高级程序设计中出现的错误)
一:npm install connect会出现错误:解决方法 1:$ npm install connect@2.X.X 2:$ npm install serve-static: 建立server ...
- hibernate初涉
好久都不曾写写总结一些东西了,惰性真的是令人难以克制!虽然和许多北漂族一样,艰苦而又迷茫,但是我总能找到一些方向,一点期盼,因为你就我的目标.我会坚持下去,重拾青春的热血,既然人生如戏,那我不当猪脚. ...
- Java 编程的动态性,第 7 部分: 用 BCEL 设计字节码--转载
在本系列的最后三篇文章中,我展示了如何用 Javassist 框架操作类.这次我将用一种很不同的方法操纵字节码——使用 Apache Byte Code Engineering Library (BC ...
- python对象(腌制)
python的内置对象类型主要有数字,字符串,列表,元祖,字典,集合等等,在python中,一切皆为对象 #腌制在python中如果我们有一些对象需要持久性存储,并且不丢失我们这个对象的类型与数据,我 ...
- Visual Studio写的项目在 IIS 服务器上运行的两种简单方法
首先需要PC上开启了IIS服务,相关方法网上很多,也很简单 第一种:直接在项目中操作 1.创建一个项目,然后右击选中项目,右击,单击属性,打开项目属性标签页面 如图,选择Web标签,在服务器栏目中选中 ...
- CRC32校验的用法
CRC32校验数据的完整性 这里的数据包括字符串.文件,还有哪些? 文件校验相当于下载大型软件,有md5加密结果.这里的用途是什么?
- WCF 接收我服务的 HTTP 响应时发生错误
错误内容: System.ServiceModel.CommunicationException: 接收对 https://xx.com/xx.svc的 HTTP 响应时发生错误.这可能是由于服务终结 ...
- 在iOS8下使用CLLocationManager定位服务需要系统授权
最近在ios8.0使用CLLocationManager定位服务,发现老不能定位,查看设置菜单中的项也是处于未知状态.想起之前都有一个弹出框提示用户是否允许定位,这次一直没有出现了.原来ios8.0下 ...