首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > VB >

比较有挑战性的填表难题 高手快来围观.该如何处理

2012-01-28 
比较有挑战性的填表难题 高手快来围观..............Private Sub Command2_Click()WebBrowser1.Document.g

比较有挑战性的填表难题 高手快来围观..............
Private Sub Command2_Click()
WebBrowser1.Document.getElementByID("iptUser").Value = "用户名"
WebBrowser1.Document.getElementByID("iptPwd").Value = "密码"
WebBrowser1.Document.getElementByID("enter.x").Click '//登陆
End Sub
Private Sub Form_Load()
Command2.Enabled = False
WebBrowser1.Navigate2 "http://www.szsofttel.com"
WebBrowser1.Navigate2 "http://www.126.com"
End Sub
Private Sub Form_Resize()
  On Error Resume Next
  WebBrowser1.Move 50, WebBrowser1.Top, Me.ScaleWidth - 100, Me.ScaleHeight - WebBrowser1.Top
End Sub
Private Sub WebBrowser1_DocumentComplete(ByVal pDisp As Object, URL As Variant)
If URL <> "about:blank" And URL <> "" And URL <> "http:///" Then
  Command2.Enabled = True
End If
End Sub

上面是一段可以自动登陆邮箱的代码 

但是当 其他的填表 

标签的ID name 都是加密数据 还有什么办法可以突破呢

<a href="javascript:void(0);" class="bt">Check Availability</a>
  </div>
  <fieldset>
  <label for="p82cc9d0d20aae1b5a21054e2d3b09494">* Your login: </label>
  <input validator="required min6 max19 login" maxlength="19" name="p82cc9d0d20aae1b5a21054e2d3b09494" id="p82cc9d0d20aae1b5a21054e2d3b09494" type="text" value="" />
  <span class="control">&nbsp;</span>
  <span class="error">Empty or invalid field</span>
  </fieldset>

your login 后面的 ID name都是加密的

如何填写这样的表单呢?

[解决办法]
如果是仅就这一段HTML文档,按id="p82cc9d0d20aae1b5a21054e2d3b09494"表仍能填.
[解决办法]
只给思路,具体自己去实现。
1.首先使用inet得到网页源码,得到<input validator="required min6 max19 login" maxlength="19" name="开始到之后的第一个引号位置的值设为kName:p82cc9d0d20aae1b5a21054e2d3b09494

2.遍历整个WebBrowser1.Document中的input对象,判断input.name=kName,则填入数据。

3.完

希望能给你一些启示
[解决办法]
方式方法很多,但是不知道对你适用不。可以根据他上面的结点包含Your login: 这个字符传的特性来定位这个结点。也就是说,找innertext包含Your login: 的结点,然后找NEXTNODE就能定位到需要的结点。也可以根据结点的maxlength属性值为19来确定这个结点。也可以……很多了。定位嘛,不一定用名称或ID,用其他属性一样可以,如果他的父结点有什么特殊的地方,兄弟结点有什么特殊的地方都可以用来定位。
[解决办法]
getElementByTagName ("input")

热点排行