C# 网页自动填表自动登录(转)
自动填表的方式有很多,关键是获取控件的id或者name。
比如源代码有
- <input id="pwdInput" tabindex="2" class="ipt-t" type="password" name="password" onMouseOver="fEvent('mouseover',this)" onFocus="fEvent('focus',this)" onBlur="fEvent('blur',this)" onMouseOut="fEvent('mouseout',this)"/>
那么就可以用
- HtmlDocument doc = webBrowser1.Document;
- foreach (HtmlElement em in doc.All)
- {
- string str = em.Id;
- if (str == "pwdInput")
- {
- em.SetAttribute("value", "abc"); break;
- }
- }
foreach获得了全部的控件id,然后找出 id为pwdInput的控件并赋值abc。
还可以更简单直接获取控件id,如下
- HtmlElement tbUserid = webBrowser.Document.All["username"];
- HtmlElement tbPasswd = webBrowser.Document.All["password"];
- tbUserid.SetAttribute("value", "");
- tbPasswd.SetAttribute("value", "");
这样就自动找到id为usename 和password的控件并赋值。
点击按钮也有很多种方式,如果知道按钮的id或者name,例如id为:"submitbutton",直接用
- HtmlElement btnSubmit = webBrowser.Document.All["submitbutton"];
- btnSubmit.InvokeMember("click");
如果不知道id和name,就用
- webBrowser1.Document.Forms[0].Invoke("submit");
这样获取了所有该网页所有按钮连接