获取网页html元素

获取网页html元素就是使用一种能唯一标识网页中所需的html元素,本系列软件已支持框架元素获取。

在本系列软件中,多个地方需要用到获取网页HTML元素,其方法是一致的。目的是要找到一种方法唯一标识指定的HTML元素。我们通过设计自动获取HTML元素功能,促使操作设置更为简便,提高了效率。

一、自动分析获取html元素

点击【自动获取】按钮,将打开自动获取元素的对话框。自动获取结果将直接填写在下面的输入框中

自动获取时,将自动打开网址列表中的网页,你也可以自动输入网址然后打开,等待网页加载完毕后(状态栏显示状态为完成时),将鼠标移到你需要地方,此处的html元素会有一个红色的方框,此时点击鼠标右键,再选择获取元素,或者使用快捷方式ALT+T(如果是下拉列表框元素,只能使用快捷键获取元素),当前元素就被成功获取,相关信息在窗口下部显示。只要再点击【添加元素】程序会自动分析,得到元素标识方法,并将结果写入其父窗口,本窗口自动关闭。

动态效果:勾选时将以红色方框显示当前鼠标位置的元素,不勾选时没有方框。由于红色方框可能造成元素坐标变化,所以在获取坐标时建议不使用动态效果

只有当获取到元素后才能进行下面的操作

1、父元素:直接获取当前元素的父元素

2、子元素:列出当前元素的所有子元素,在列表中选择可直接获取对应的子元素

3、自动提取元素标识:自动分析当前已获取到的元素,得到该元素的最佳标只方法。获取结果将下面的输入框中显示,也可以手工再修改

4、通过下标识别元素:强制使用元素下标来标识当前已获取到的元素。获取结果将下面的输入框中显示,也可以手工再修改

5、添加元素:完成自动分析获取并保存结果。可以在获取到元素后直接点击该按钮

6、单击测试:模拟鼠标单击当前已获取到的元素来测试是否获取正确

7、释放元素:在成功获取元素后,再次单击鼠标右键,【释放元素】菜单,则先前获取到的元素被释放。

注意:自动获取时,能同时获取元素的标记、标识属性名、标识属性值、元素下标值、元素横坐标和元素纵座标。需在此窗口的父窗口中具体选择获取方式。

 

二、手工分析获取html元素

在“获取元素方式”里选择获取元素方式,支持三种方法获取,以下分别介绍一下手工分析代码设置方

1、通过html元素属性获取

通过html元素属性获取元素

通过html元素的id来标识元素,如果没有id属性,也可以使用其它属性,只要这个属性值是唯一的就可以成功标识该元素

需要填写的内容说明

a、标记名称

html元素标记名称,注意:填写元素标记时不包括尖括号。如a、img、input

标记名称下标:用来表示网页内部框架中的元素。例如:“[input]2”表示网页中第二个框架页面内的input元素。

b、元素标识属性

html元素的属性名,如id、src、hight。自动获取元素后,此处会列出元素所有属性。可在下拉窗口中选择属性,对应的属性值自动跟随变化。

标识属性下标:用来区分具有相同元素标记名称,相同标识属性,相同标记属性值的元素。例如有如下源代码:

“<input name=grade /><input name=grade /><input name=grade />”为了区分不同元素,我们使用属性下标。第二个元素设置方法如下

通过html元素属性获取元素

*、特别的属性说明

text:该元素在网页中显示的内

html:该元素的html源码

class:也可以写成classname,元素的css样式

on*:该元素的事件,例如:onclick。事件名也可以当做属性来标识元素。

c、元素标识属性值

html元素属性对应的值,注意:填写时不包括单引号或双引号。

*、标识属性值模糊识别

当元素属性值无法完全匹配时,将启动模糊查询。例如:元素真实属性为“abcdef“,此时设置元素属性为“bcd”,只要没有重复的“bcd”,一样可以找到该元素

2、通过html元素下标获取

通过HTML元素下标获取元素

通过元素名称以及该元素在网页同名元素组中出现的次序来唯一标识元素。此法用于标识无属性的元素特别方便,比如网页表格中的单元格,列表等

需要填写的

a、元素标识名

html元素标记名称,如a、img、input

b、元素下标

填写数字,说明该元素是在同名元素组中的次序

比如:元素标识名称:img 元素下标值:7       表示网页中第7个img元素

3、通过html元素坐标获取

通过HTML元素坐标获取元素

通过元素在网页内部的纵横坐标位置来标识元

需要填写的

a、纵坐标x:元素距离网页左边框的距离,以像素为单位

b、横坐标y:元素距离网页上边框的距离,以像素为单位

*、点击网页绝对坐标

点击网页坐标

此项仅用于添加添击位置,表示直接点击网页上的坐标位置,并不确认该位置是否有html元素