HTMLParser获取属性名方式:

原始网页文本:

 <a title="美军被曝虐尸" href="http://www.sogou.com/web?query=%C3%C0%BE%FC%B1%BB%C6%D8%C5%B0%CA%AC" target="_blank">美军被曝虐尸</a></li><li><strong class="num2">2</strong><a title="温岭鞋厂大火" href="http://www.sogou.com/web?query=%CE%C2%C1%EB%D0%AC%B3%A7%B4%F3%BB%F0" target="_blank">温岭鞋厂大火</a></li><li><strong class="num2">3</strong><a title="2014春运全国启动" href="http://www.sogou.com/web?query=2014%B4%BA%D4%CB%C8%AB%B9%FA%C6%F4%B6%AF" target="_blank">2014春运全国启动</a></li><li><strong class="num2">4</strong><a title="汪峰章子怡同居" href="http://www.sogou.com/web?query=%CD%F4%B7%E5%D5%C2%D7%D3%E2%F9%CD%AC%BE%D3" target="_blank">汪峰章子怡同居</a></li><li><strong class="num2">5</strong><a title="透视年会" href="http://www.sogou.com/web?query=%CD%B8%CA%D3%C4%EA%BB%E1" target="_blank">透视年会</a></li>

经过parser处理后文本:

parser匹配代码:

     NodeFilter filter1 = new HasAttributeFilter("a");
NodeFilter filter2 = new HasAttributeFilter("title"); //NodeFilter innerFilter = new TagNameFilter ("title");
//NodeFilter filter2 = new HasChildFilter(innerFilter);
NodeFilter filter = new AndFilter(filter1, filter2);
NodeList nodes = parser.extractAllNodesThatMatch(filter);

处理后文本:

 <a title="美军被曝虐尸" href="http://www.sogou.com/web?query=%C3%C0%BE%FC%B1%BB%C6%D8%C5%B0%CA%AC" target="_blank">美军被曝虐尸</a>
<a title="温岭鞋厂大火" href="http://www.sogou.com/web?query=%CE%C2%C1%EB%D0%AC%B3%A7%B4%F3%BB%F0" target="_blank">温岭鞋厂大火</a>
<a title="2014春运全国启动" href="http://www.sogou.com/web?query=2014%B4%BA%D4%CB%C8%AB%B9%FA%C6%F4%B6%AF" target="_blank">2014春运全国启动</a>
<a title="汪峰章子怡同居" href="http://www.sogou.com/web?query=%CD%F4%B7%E5%D5%C2%D7%D3%E2%F9%CD%AC%BE%D3" target="_blank">汪峰章子怡同居</a>
<a title="透视年会" href="http://www.sogou.com/web?query=%CD%B8%CA%D3%C4%EA%BB%E1" target="_blank">透视年会</a>

得到属性名:

也就是下方的标签属性:

匹配代码:

 Node node = (Node)nodes.elementAt(i);
LinkTag linkTag = (LinkTag)node;
System.out.println(linkTag.getAttribute("title"));

匹配结果:

 美军被曝虐尸
温岭鞋厂大火
2014春运全国启动
汪峰章子怡同居
透视年会

官方API:http://htmlparser.sourceforge.net/javadoc/

HTMLParser获取属性名的更多相关文章

  1. 获取属性名:PropertyNameHelper

    获取属性名:PropertyNameHelper namespace NCS.Infrastructure.Querying { public static class PropertyNameHel ...

  2. java中遍历实体类,获取属性名和属性值

    方式一(实体类): //java中遍历实体类,获取属性名和属性值 public static void testReflect(Object model) throws Exception{ for ...

  3. Swift 通过运行时获取属性名列表

    import UIKit //必须要有@objcMembers修饰符,否则获取到的成员属性为0 @objcMembers class Person: NSObject { var name: Stri ...

  4. JS获取对象属性名小结

    最近面试遇到问如何获取对象全部属性名的方法,总结一下: 对象属性类型分类: 1.ESMAScript分类 数据类型 又分为可枚举和不可枚举类型 访问器类型 2.上下文分类 原型属性 实例属性 1.列举 ...

  5. php : 获取对象的属性名

    方案有多种: 一. 使用 get_object_vars() 方法 缺点: 只能显示 public 的 //只显示public的 var_dump(get_object_vars($test)); 处 ...

  6. java反射获取类的类名、属性名、属性类型、方法、执行方法、构造函数

    public class Demo02 { @SuppressWarnings("all") public static void main(String[] args) thro ...

  7. jquery中数组对象下面的属性名名是动态的如何获取

    <script> let normalListData = []; function temp() { for (var i = 0; i < 10; i++) { let rowC ...

  8. SpringBoot08 请求方式、参数获取注解、参数验证、前后台属性名不一致问题、自定义参数验证注解、BeanUtils的使用

    1 请求方式 在定义一个Rest接口时通常会利用GET.POST.PUT.DELETE来实现数据的增删改查:这几种方式有的需要传递参数,后台开发人员必须对接收到的参数进行参数验证来确保程序的健壮性 1 ...

  9. java 反射机制--根据属性名获取属性值

    1.考虑安全访问范围内的属性,没有权限访问到的属性不读取 /** * 根据属性名获取属性值 * * @param fieldName * @param object * @return */ priv ...

随机推荐

  1. [BigData]关于Hadoop学习笔记第四天(PPT总结)(一)

    课程安排 Partitioner编程** 自定义排序编程** Combiner编程** 常见的MapReduce算法** ---------------------------加深拓展-------- ...

  2. 【简单dp+模拟】hdu-5375(2015多校#7-1007)

    给你一个二进制数,,每一位有一个权值,让你转格雷码,求所对应格雷码位为1的权值的和:二进制位中的某些位为?,你需要给这些问号赋值使得到的和最大. 首先你得知道二进制转格雷码的规则,即格雷码位为[二进制 ...

  3. 将CSV格式的文件导入到数据中

    --创建表 create table t1( id number primary key, name ), score number, subject ) ) --创建控制文件 t1.ctl,以文本的 ...

  4. PhotoShop—剪贴蒙版

    工作中发现剪贴蒙版方便好用,所以简单分享下~ 一.剪贴蒙版有什么作用 1.文字上色 2.裁剪图片 3.添加背景 等 二.剪贴蒙版怎么使用 1.新建层,打上字如图 2.文字上面再建层加上效果如渐变 3. ...

  5. 极其简单的使用基于gulp和sass前端工作流

    简单的记录自己如何在实际工作中使用gulp和sass的.我的原则是,小而美! gulp与sass介绍 gulp 什么是gulp?和Grunt一样,是一种任务管理工具:和Grunt又不一样,gulp是一 ...

  6. Linux 命令 - df: 报告磁盘空间的占用情况

    df 命令列出指定的文件名所在的文件系统上可用磁盘空间的数量. 如果没有指定文件名,则显示当前所有使用中的文件系统.默认情况下,磁盘空间以 1K 为一块显示,如果设置了环境变量 POSIXLY_COR ...

  7. 三种方式得到LayoutInflater

    LayoutInflaterinflater=LayoutInflater.from(this); LayoutInflaterinflater=getLayoutInflater(); Layout ...

  8. 如何让Asp.net webAPI返回JSON格式数据

    ASP.NET Web API 是新一代的 HTTP 網路服務開發框架,除了可以透過 Visual Studio 2012 快速開發外 (內建於 ASP.NET MVC 4 的 Web API 專案範 ...

  9. Cocos2d-x数据持久化-修改数据

    修改数据时,涉及的SQL语句有insert.update和delete语句,这3个SQL语句都可以带参数.修改数据的具体步骤如下所示.(1) 使用sqlite3_open函数打开数据库.(2) 使用s ...

  10. Stored Procedures with Multiple Result Sets

    Stored Procedures with Multiple Result Sets https://msdn.microsoft.com/en-us/data/jj691402.aspx