章_367841
没理解您的意思,最近遇到了这种问题,可以再指点一下吗?谢谢!
例如这个元素探测到id:
ext-comp-1333,“ext-comp-”是固定的且不是唯一的,网页上所有元素ID都带有此字符,后面的数字是随机生成的。你可以先把网页源代码读取出来写到word文档,在分析此元素与其他特征字符是否存在位置关系
hWeb = WebBrowser.BindBrowser("chrome",10000,{"bContinueOnError":False,"iDelayAfter":300,"iDelayBefore":200})
sRet = WebBrowser.GetHTML(hWeb,{"bContinueOnError":False,"iDelayAfter":300,"iDelayBefore":200})
objWord = Word.Open("C:\\Users\\Administrator\\Desktop\\新建 DOC 文档.doc","","",True)
Word.Write(objWord,sRet)
iRet = InStrRev(sRet,"确定",1,False)
sRet = SubString(sRet,iRet-50,iRet-20)
sRet = DigitFromStr(sRet)
在源代码中我发现“确定”这个字符是唯一的,且与我需要的元素ID:ext-comp-1333 位置比较接近,接下来只要找到“确定”的位置就行。代码输出的sRet就是“1333”这是一种思路。
虽然网页元素id是随机,但是你细心观察,会发现他们之前会存在某些关系。
还有一种方法刚刚这个元素虽然ID是随机,但是通过元素分析,它的name值比较特殊:
注意visitDate_后面的字符也是随机的,因此我们可以用visitDate_*来代替随机的部分。多观察,总能找到规律。