我正在尝试打印页面上显示的所有链接的名称。我写了以下代码 - >
SystemUtil.Run "Chrome.exe","www.timesofindia.com"
Dim obj, objects,objectnames,i
Set obj = Description.Create
obj("micclass").value = "Link"
objects = Browser("micclass:=browser").Page("micclass:=Page").ChildObjects(obj)
MsgBox Err.number
For i = 0 To obj.Count-1 Step 1
childnames = objects.getROProperty("innertext")
print childnames(i)
Next
我在第objects = Browser("micclass:=browser").Page("micclass:=Page").ChildObjects(obj)
行
行MsgBox Err.number
提供错误编号-2147467259
我试图找出错误编号的原因 - 2147467259,但没有得到任何相关答案。请帮忙。
答案 0 :(得分:1)
您的脚本存在一些问题
Set
个对象,因为这是一个对象For
循环中,您应该循环objects.count
而非obj.count
For
正文中,您应该使用objects(i).GetROProperty
(您忘记使用i
编号索引)Print
声明中,您无缘无故地将childnames
编入索引进行这些更改之后,脚本对我有用,但它有点慢,如果您仍然遇到问题,可能是UFT在等待所有链接显示时超时。如果是这种情况,您可以将查询分成几个查询(例如,innertext
以字母表中的每个字母开头)并依次运行它们。
SystemUtil.Run "Chrome.exe","www.timesofindia.com"
Dim obj, objects,objectnames,i
Set obj = Description.Create
obj("micclass").value = "Link"
Set objects = Browser("micclass:=browser").Page("micclass:=Page").ChildObjects(obj)
If Err.Number <> 0 Then
MsgBox "Error: " & Err.number
End If
Print "Count " & objects.Count
For i = 0 To objects.Count-1 Step 1
childnames = objects(i).getROProperty("innertext")
print childnames
Next
答案 1 :(得分:0)
我遇到了同样的问题并解决了使用错误恢复下一个声明
On error resume next
Set desc = description.Create
desc("micClass").value = "WebElement"
set WElementobj = browser("creationtime:=0").page("title:=.*").ChildObjects(desc)
msgbox welementobj.count
For i = 0 to welementobj.count-1
print welementobj(i).getroproperty("innertext")
Next
出现此问题的原因是因为并非所有对象都具有innertext属性。