c#实现webbrowser模拟登录
{
HtmlDocument doc = webBrowser1.Document;
HtmlDocument docbk = doc;
//为了获取webbrowser中的图片,要引用mshtml 组件
IHTMLDocument2 doc2 = (IHTMLDocument2)docbk.DomDocument;
IHTMLControlRange imgRange;
HTMLBody body = (HTMLBody)doc2.body;
string idencode = “”;
foreach (IHTMLImgElement img in doc2.images)
{
if (img.src.IndexOf(“randomimage”) > 0)
{
imgRange = (IHTMLControlRange)body.createControlRange();
imgRange.add((IHTMLControlElement)img);
imgRange.execCommand(“Copy”, false, null);
Bitmap bmp = (Bitmap)Clipboard.GetDataObject().GetData(DataFormats.Bitmap); //内存拷贝法
pictureBox1.Image = bmp;
bmp = MemDeal(bmp); //灰度处理
pictureBox3.Image = bmp;
bmp = BinDeal(bmp); //二值化
pictureBox4.Image = bmp;
textBox1.Text = idencode = GetNumbers(bmp); //数字提取
}
}
//模拟输入
foreach (HtmlElement he in doc.All)
{
if(he.TagName.ToUpper().Equals(“INPUT”))//表单
{
switch (he.Name)
{
case “name”:
doc.All[he.Id].InnerText = “winxos”;
break;
case “pass”:
doc.All[he.Id].InnerText = “******”;
break;
case “psNum”:
doc.All[he.Id].InnerText = idencode;
break;
}
}
if (he.GetAttribute(“value”).Equals(“登录”))
{
//he.InvokeMember(“click”);
//不知道为什么按钮点击无法触发
MessageBox.Show(“submit”);
}
}
}
大半夜睡不着手机上网抢沙发,ohyeah
居然不识别俺的破爪机?↓
大D。。。。