51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2644|回复: 8
打印 上一主题 下一主题

[原创] 获取网页中的所有LINK对象

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-8-13 14:41:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想获取页面的所有LINK对象,采用的如下代码:
Set Desc=description.create
Desc("micclass").value="Link"
Set List=Browser("百度一下,你就知道").Page("百度一下,你就知道").ChildObjects(Desc)
Num=List.count-1
For i=0 to Num
        list(i).click
wait 3
Next
可是执行到i=1时,提示错误:General run error.请教各位是什么原因呢?
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-8-13 15:55:19 | 只看该作者
用qtp9.0对象管理,直接就可以把页面所有的对象都能获取,如果你只想要link,那你就只check link 选项 就可以得到面所有link 对象了
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2007-8-13 16:04:49 | 只看该作者
我这有一段代码,看看你能不能参考一下!
Dim objectCount, tags, element     'objectCount是统计页面上面带有删除字样的链接数量,tags暂时存储页面上全部的链接,element是取出tags中每一条数据
Set tags = Browser("name:=百度一下,你就知道").Page("title:=百度一下,你就知道").Object.Links    '把该页面的所有链接储存在tags中
objectCount = 0
For Each element in tags
  If element.innerText= "贴 吧"   Then                    '查找每一个链接对象的innerText属性为"贴 吧" 的
          objectCount = objectCount + 1                  '统计其个数
   end if
Next


希望对你有帮助!
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2007-8-13 16:24:30 | 只看该作者

回复 #1 xueqinzhaoqing 的帖子

有用
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2007-8-13 16:24:59 | 只看该作者
忘了谢谢了
回复 支持 反对

使用道具 举报

  • TA的每日心情
    奋斗
    2022-7-13 15:22
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    6#
    发表于 2007-8-13 17:15:56 | 只看该作者

    回复 #1 xueqinzhaoqing 的帖子

    Set List=Browser("百度一下,你就知道").Page("百度一下,你就知道").ChildObjects(Desc)
    Num=List.count-1
    For i=0 to Num
            list(i).click
    wait 3
    Next

    i=0的时候,主页面上的link被点中了,主页面发生跳转
    i=1的时候,当前已经不是原来的主页面了,当然找不到那个link了


    或者你可以在 list(i).click之后,录制一个“后退”的操作,这样可能就能跑下去了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    7#
    发表于 2007-8-13 17:20:51 | 只看该作者
    原帖由 xueqinzhaoqing 于 2007-8-13 14:41 发表
    我想获取页面的所有LINK对象,采用的如下代码:
    Set Desc=description.create
    Desc("micclass").value="Link"
    Set List=Browser("百度一下,你就知道").Page("百度一下,你就知道").ChildObjects(Desc)
    Num= ...


    这段代码里面有一个错误:
    循环语句里面i=0时,第一个Link被Click。这时候页面应该已经跳转了吧?
    循环语句执行到i=1时,已经不是刚才的页面了当然会出错了。

    如果要统计个数,只要用楼上介绍的方法就可以了;
    如果需要点击某个特定的Link,应该在Click那行语句上加入限制条件。否则页面跳转后,后面的对象集合以及Click事件都是无效的;
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
    发表于 2007-8-14 10:36:01 | 只看该作者
    运行到这句就报错了,Set List=Browser("百度一下,你就知道").Page("百度一下,你就知道").ChildObjects(Desc)

    [ 本帖最后由 suifengpiao 于 2007-8-14 10:56 编辑 ]
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2007-8-15 10:18:45 | 只看该作者
    guanzhu
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-23 16:51 , Processed in 0.087213 second(s), 27 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表