Som*_*omi 3 .net c# windows webbrowser-control winforms
我正在做一个项目,我必须创建一个Windows应用程序,可以从用户的文本框中获取URL.现在,当用户按下Proceed按钮时,应用程序应该在webbrowser控件中打开该URl并填写包含userID和密码文本框的页面上的表单,并通过该网页上的登录按钮提交.现在我的应用程序应该向用户显示该webbrowser控件中的下一页.
我可以通过我的C#代码在应用程序的webbrowser控件中打开url,但我无法弄清楚如何在我的应用程序的webbrowser控件中当前打开的该网页上找到userID和pasword文本框,如何填写它们,如何找到登录按钮以及如何通过我的C#代码单击它.
为此,您必须查看第三方网站的页面源,并找到用户名,密码文本框和提交按钮的ID.(如果您提供链接,我会为您检查).然后使用此代码:
//add a reference to Microsoft.mshtml in solution explorer
using mshtml;
private SHDocVw.WebBrowser_V1 Web_V1;
Form1_Load()
{
Web_V1 = (SHDocVw.WebBrowser_V1)webBrowser1.ActiveXInstance;
}
webBrowser1_Document_Complete()
{
if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)
{
if (webBrowser1.Url.ToString() == "YourLoginSite.Com")
{
try
{
HTMLDocument pass = new HTMLDocument();
pass = (HTMLDocument)Web_V1.Document;
HTMLInputElement passBox = (HTMLInputElement)pass.all.item("PassIDThatyoufoundinsource", 0);
passBox.value = "YourPassword";
HTMLDocument log = new HTMLDocument();
log = (HTMLDocument)Web_V1.Document;
HTMLInputElement logBox = (HTMLInputElement)log.all.item("loginidfrompagesource", 0);
logBox.value = "yourlogin";
HTMLInputElement submit = (HTMLInputElement)pass.all.item("SubmitButtonIDFromPageSource", 0);
submit.click();
}
catch { }
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
30005 次 |
| 最近记录: |