Foxtable(狐表)用户栏目专家坐堂 → [求助]网页登录并写入数据出错


  共有1896人关注过本帖树形打印复制链接

主题:[求助]网页登录并写入数据出错

帅哥哟,离线,有人找我吗?
有点甜
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/11/28 11:52:00 [显示全部帖子]

Dim web As new windows.forms.webbrowser
web.ScriptErrorsSuppressed = True
web.Navigate("网址一")
Do Until web.ReadyState = 4
    Application.DoEvents
Loop
For Each archor As object In web.Document.Forms
    archor.SetAttribute("target", "_self")
Next
Dim loginId = web.Document.GetElementById("用户名")
Dim password = web.Document.GetElementById("密码")
Dim Image2 = web.Document.GetElementById("yt0")
loginId.setAttribute("value", "222")
password.setAttribute("value", "666")
msgbox("填入了用户名和密码")
image2.InvokeMember("click")

Dim web1 As new windows.forms.webbrowser
web1.ScriptErrorsSuppressed = True
web1.Navigate("网址二")
Do Until web1.ReadyState = 4
    Application.DoEvents
Loop
For Each archor As object In web1.Document.Forms
    archor.SetAttribute("target", "_self")
Next
Dim loginId1 = web1.Document.GetElementById("LoginValidIP[ip]")
Dim password1 = web1.Document.GetElementById("LoginValidIP[storeName]")
Dim Image21 = web1.Document.GetElementById("yt0")
loginId1.setAttribute("value", "175.168.76.1")
password1.setAttribute("value", "6666")
msgbox("填写了ip及信息")
image21.InvokeMember("click")
web1.Dispose()
GC.Collect()


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/11/28 12:09:00 [显示全部帖子]

提示错误说明你分析的网页不正确。

 

请贴出具体网址测试。


 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/11/28 12:28:00 [显示全部帖子]

加入msgbox弹出,看看是哪句代码开始报错。

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/11/28 14:25:00 [显示全部帖子]

id值分别改成 LoginValidIP_ip、LoginValidIP_storeName

 回到顶部
帅哥哟,离线,有人找我吗?
有点甜
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:85326 积分:427815 威望:0 精华:5 注册:2012/10/18 22:13:00
  发帖心情 Post By:2017/11/28 14:57:00 [显示全部帖子]

1、延时,参考

 

Dim sdt As Date = Date.Now
While Date.Now < sdt.AddSeconds(10)
    Application.DoEvents
End While

msgbox("10秒后执行")

 

 

2、方法二,可以这样

 

web1.Navigate("网址二")
Do Until web1.ReadyState = 4 andAlso web1.Document.GetElementById("LoginValidIP[ip]") isnot Nothing
    Application.DoEvents
Loop


 回到顶部