日期:2014-05-18 浏览次数:20995 次
HtmlDocument htmlDoc = webBrowser.Document; HtmlElement btnElement = htmlDoc.All["btnClose"];//得到关闭按钮 HtmlElement tbUserid = webBrowser.Document.All["username"];//得到用户名文本框
------解决方案--------------------
httpwebrequest通过post传值
findwindow获取句柄,sendmessage给文本框等赋值
webbrower遍历html标签,根据属性实现赋值
HtmlElement btnSubmit = webBrowser.Document.All["submitbutton"];
HtmlElement tbUserid = webBrowser.Document.All["username"];
HtmlElement tbPasswd = webBrowser.Document.All["password"];
tbUserid.SetAttribute("value", "");
tbPasswd.SetAttribute("value", "");
btnSubmit.InvokeMember("click");
------解决方案--------------------
看了你的要求,发现你问题把ls几位带沟里了
你没必要去填写网页,你只需要用httpwebrequest通过post传值一个构造好的封包就可以了
建议处理过程
1。使用ADO.net将记录读取到list列表
2。开启线程,遍历list列表,使用httpwebrequest构造封包post值(中间线程得休眠几秒,不然就是导入工具,而是潮水攻击工具了)
3。接收httpwebrequest的结果信息,使用正则比对页面信息是否提交正确(server端一般都会有数据格式验证滴,所以不能只传不接)将失败的提交信息 存入失败列表
------解决方案--------------------
标准的做法应该是模拟post,模拟键盘的可以参考
http://blog.csdn.net/amandag/archive/2010/06/16/5673370.aspx