`

用htmlparser提取table信息

阅读更多

htmlparser1.6
提取tr似乎有些问题,直接用css selector提取的tr冗余,tr里面还有tr。
所以这里多做了些处理。请看代码。

  public static Map<String,String> parseList(String url) {
    Map<String,String> rlt=new LinkedHashMap<String,String>();
    NodeFilter filter=new CssSelectorNodeFilter (".className tr");
    filter = new AndFilter(filter, new NotFilter(new HasChildFilter(new CssSelectorNodeFilter ("tr"))));
    Parser parser;
    try {
      parser = new Parser(url);
      NodeList list = parser.extractAllNodesThatMatch(filter);
      for(int i=0;i<list.size();i++){
        Node tr=list.elementAt(i);
        parser = new Parser(tr.toHtml());
        NodeList tds = parser.extractAllNodesThatMatch(new CssSelectorNodeFilter ("td"));
        String key=tds.elementAt(0).toPlainTextString();
        String value=tds.elementAt(1).toPlainTextString();
        rlt.put(key, value);
      }
    } catch (ParserException e) {
      e.printStackTrace();
    }
    return rlt;
  }

 

考虑一下
考虑一下

 

  • 大小: 15 KB
分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    HTMLParser抽取Web网页正文信息

    HTMLParser 是一个强大的工具,用于解析和分析HTML文档,它能帮助我们从网页中抽取主要信息,排除掉无关的导航、广告和版权等噪音内容。...这种方法在网页爬虫、内容分析和信息提取等领域具有广泛的应用价值。

    基于Htmlparser的天气预报程序

    标签“java”表明该程序是用Java语言编写的,这意味着它遵循面向对象编程原则,可能包含类如WeatherService(用于获取天气数据)、Parser(实现Htmlparser的解析逻辑)和UI(用户界面,展示天气信息)。程序可能使用...

    HTMLparser 测试代码

    在Web开发中,HTMLparser通常被用在自动化任务、网页抓取或数据挖掘项目中。本篇将深入探讨HTMLparser的测试代码及其相关知识点。 首先,`ParserTest.java`可能是一个Java类,用于实现对HTMLparser的测试。在Java中...

    将HTML转成text,横向表格用TAB分开

    在IT领域,转换HTML到纯文本是一项常见的任务,特别是在数据处理和信息提取中。这个压缩包文件提供的C++源代码正是为了实现这一目的,特别是针对包含横向表格的HTML文档。让我们详细了解一下这些文件以及其中涉及的...

    爬虫代码matlab-resume_projects:展示项目

    XML或者HTMLParser工具箱可以解析网页结构,提取所需信息。 2. **数据抓取策略**:爬虫可能采用了递归爬取、深度优先或广度优先策略,通过URL解析和链接提取来遍历整个网站或特定部分。 3. **网页解析**:MATLAB中...

    JAVA上百实例源码以及开源项目源代码

    关于数字签名:产生RSA密钥对(myKeyPair),得到RSA密钥对,产生Signature对象,对用私钥对信息(info)签名,用指定算法产生签名对象,用私钥初始化签名对象,将待签名的数据传送给签名对象(须在初始化之后),用公钥...

Global site tag (gtag.js) - Google Analytics