在整理箱结构树上有一个右键弹出菜单,上面的菜单项都是用来修改整理箱结构的,如果整理箱是使用newBckt按钮创建的,大量的操作都是“添加”信息属性;如果整理箱是通过FreeFormat识别创建的,主要的修改操作是修剪整理箱结构树。
所有可以进行的裁剪和编辑操作都是从整理箱结构树的右键弹出菜单上激发。首先在结构树上选择要操作的FreeFormat节点,然后点击鼠标右键选择相应菜单进行操作。
技巧:整理箱结构树、DOM树视窗和内嵌的浏览器上的信息是一一对应的,选择某个信息属性时,如果它是一个FreeFormat节点(即具有FreeFormat标志),那么,在DOM树视窗上,相应的DOM节点将被选择,同时,在浏览器上的相应内容将用一个闪烁的红色边框突出显示,便于用户观察。
下面将讲解几个常用的操作,其他操作参见《MetaStudio V3.x高级用户手册》
在整理箱结构树的鼠标右键弹出菜单中有个“添加”菜单项,下一级菜单有三项:
激发上述任一菜单后,将弹出一个对话框,需要编辑以下特性(attribute):
key:表示该信息属性是否是关键字,其含义跟数据库关键字不同,表示该信息属性是否一定要出现在目标页面上,如果设置了key特性,则本信息属性的提取规则将作为其中一条信息结构识别规则,表示这个信息属性必须存在于页面上,否则,该页面不符合信息结构识别规则,即该页面信息不被提取。因此,在定义信息提取规则时,适当选择一些信息作为页面识别的标志,可以加强信息提取指令文件的适应性,即使目标页面结构作了些许调整,以前生成的信息提取规则并没有失效。
技巧:
block:是否从目标页面上整块提取信息,如果是,对话框将显示block的选项,例如提取一个DIV下的所有IMG元素或文本内容或者整个HTML文档片段等,详细使用方法参见MetaStudio高级用户手册。
注意:如果整理箱是通过FreeFormat识别创建的,每个叶子节点的block特性都设置成提取文本内容,在很多情况下,可能会将一些无用的文本内容提取下来,这样必须取消block特性,而是采用数据映射操作精确指定被提取的信息。
整理箱结构树的节点字段表明映射的DOM树节点序号,刚创建信息属性时这项没有赋值(取值-1),需要执行映射操作赋值。
一般情况下,如果整理箱是通过FreeFormat识别操作创建的,结构树中的很多与本主题语义没有关系的节点需要删除,例如,承接FreeFormat识别一节的例子,FreeFormat识别操作完成后,box1子容器是没有价值的,选择删除菜单,会询问删除整棵子树还是仅仅删除容器节点,如果是后一情形,该子容器下的节点都平移到被删除子容器节点的父节点下。
FreeFormat识别时,使用识别到的HTML class或者id特性的值命名信息属性,一般需要将名字改成符合语义的字符串,另外需要注意,在同一个整理箱中不允许重名的信息属性存在,这也是修改信息属性名字的一个主要原因,在很多情况下,会有很多重复的class和id特性值,需要一一修改对应的信息属性的名字。
在FreeFormat整理箱结构树顶部是信息属性编辑区,可以在信息属性名编辑框中直接修改其名字。也可以在整理箱结构树上双击某信息属性,在弹出窗口中修改信息属性名。
当前版本,只有HTML class和id特性能够作为FreeFormat标志,如果一个节点既有id特性又有class特性,缺省情况下优选id特性,在整理箱结构树中有个字段类型表示选择了哪个标志,有如下情形:
注意:因为id特性一般是唯一的(有时页面有错误,也会有重复的id),所以,如果被提取的信息本来就是唯一的,则可以使用它,相反,则不能使用它,例如,在本样本页面上有很多公司信息,其中的某段信息可能使用id标志,为了使信息提取规则适合本页面上所有公司信息块以及适合所有页面上的公司信息块,id特性一般是要慎重使用的。
针对FreeFormat标志的操作有: