zoukankan      html  css  js  c++  java
  • 一段截取处理含有table布局的网页内容java程序

    利用jsoup来处理含有html码的数据流。

    package com.cn;

    import java.util.ArrayList;
    import java.util.HashMap;
    import java.util.List;
    import java.util.Map;

    import org.jsoup.Jsoup;
    import org.jsoup.nodes.Document;
    import org.jsoup.select.Elements;

    public class cv {

    /**
    * @param args
    */
    /**
    * @param args
    */
    public static void main(String[] args) {
    // TODO Auto-generated method stub
    Elements tds=null;
    String html="gfg<br><table><tr><td>1</td><td>yecao</td></tr><tr><td>2</td><td>yc</td></tr></table>";//测试内容
    List<Map<String,Object>> list = new ArrayList<Map<String,Object>>();
    //开始使用Jsoup
    //Jsoup支援一个Document类 将刚才的html转化成Document
    Document document = Jsoup.parse(html);
    //一个Document又由elements组成 我们选择”tr”开头的标签,存入 trs元素群中
    Elements trs = document.select("tr");
    //得到整个HTML中包含tr的标签的个数
    int totalTrs = trs.size();
    //我们可以观察上面没有搜索结果的那个HTML。发现,如果totalTrs<=3就表示没结果。
    //只要有书目结果totalTrs必定大于3,于是
    if(totalTrs > 0)
    for(int i = 0;i < totalTrs ;i++)
    {
    //观察HTML,从第i+2个tr开始,包含的才是我们要的书目信息
    //我们从每个tr中选出td标签元素群
    tds = trs.get(i).select("td");
    //得到每个tr中td的个数
    int totalTds = tds.size();
    //一个临时的HashMap,里面是String-Object键值对
    Map<String,Object> map = new HashMap<String,Object>();
    //j是一个标识数
    for(int j =0;j < totalTds ;j++)
    {
    switch (j) {
     case 0:
    map.put("001", tds.get(j).html().toString());
    break;
    case 1:
     map.put("002", tds.get(j).html().toString());
    break;
    default:
    break;
    }
    }
    list.add(map);
    }
    System.out.println(document);
    System.out.println(trs);
    System.out.println(trs.size());
    System.out.println(tds);
    System.out.println(tds.size());
    System.out.println(list);

    }

    }

    命令框显示内容:

  • 相关阅读:
    XP系统无法安装net framework 4.0 解决方法
    StructureMap DI & IoC 工具介绍
    Castle ActiveRecord学习实践(7)级联
    Error.popStackFrame 函数
    抽象泄漏(leaky abstraction)
    [Exception]IIS6:The entry "*" has already been added的解决方法
    ASP.NET 设计模式 读书摘记2
    PHP模块开发(一) PHP环境搭建
    PHP函数HTTP 相关函数
    PHP函数FTP文件传输函数
  • 原文地址:https://www.cnblogs.com/weeds/p/2294398.html
Copyright © 2011-2022 走看看