Skip to main content

GetHTMLElement

描述:

使用CSS选择器从输入流文件的内容中提取HTML元素值。输入的HTML首先会被转换成HTML文档对象模型(DOM),这样就可以通过类似CSS选择器应用于HTML的方式提取HTML元素,然后就可以使用用户自定的CSS选择器对生成的HTML DOM进行“查询”,HTML DOM的“查询”结果可能有0-N个。如果没有“查询”到结果,则流文件被转移到"element not foun"连线;如果查询到N个结果,则会对每个结果创建一个新的流文件并转移到相关的连线。查询的结果可以放置在新流文件的内容或属性中,默认放置在属性中,用户可以通过“目的地”属性进行配置。用户还可以通过设置“元素前缀值”和“元素后缀值”属性,为查询到的结果值增加前缀或者后缀。前缀值和后缀值会被视为字符串,拼接到查询HTML DOM的结果值上。更详细的CSS选择器语法可以参考“https://jsoup.org/apidocs/org/jsoup/select/Selector.html”。

标签:

get, html, dom, css, element

参数:

如下列表中,必填参数则标识为加粗. 其他未加粗参数,则表示为可选参数。表中同时提到参数默认值设置, 并且 参数还支持 表达式语言.

名字默认值允许值列表描述
URL被解析HTML页面的基本URL(Base URL),当从HTML元素提取属性值时,此URL用来将相对路径转换成绝对路径。

支持表达式语言 (支持流属性和变量)
CSS选择器CSS选择器字符串

支持表达式语言 (支持流属性和变量)
HTML字符编码UTF-8HTML的字符编码格式
输出类型HTML
- HTML
- 文本
- 属性
- Data
控制提取HTML元素值的方式。
目的地数据流属性
- 数据流属性
- 数据流内容
设置提取到的元素值写入到流文件的属性还是内容中。
元素前缀值指定需要添加到结果元素中的前缀字符串。

支持表达式语言 (支持流属性和变量)
元素后缀值指定需要添加到结果元素中的后缀字符串。

支持表达式语言 (支持流属性和变量)
属性名称当提取HTML元素的属性值时,该值用于确定该提取哪个属性的值,当“输出类型”属性设置为“属性”时会使用该值。如果该值的前缀是“abs:”,则提取到的属性值会通过指定的基本URL转换成绝对路径。

支持表达式语言 (支持流属性和变量)

连线:

名字描述
element not found在HTML文档中找不到指定元素时会将流文件转移到该连线。原始HTML输入内容会在流文件的内容中保持不变,同时在此场景中,“original”连线不会被调用。
success成功解析HTML元素
original原始HTML输入
invalid html输入HTML存在语法错误

读取属性:

未提供。

写入属性:

名字描述
HTMLElement如果目的地为流文件的属性时,指定解析出的元素对应的属性值。

状态管理:

该组件不保存状态。

限制:

该组件没有限制

输入流要求:

组件必须提供输入流。

系统资源考量:

未提供。

参考:

ModifyHTMLElement, PutHTMLElement