公司BOSS
要求我开发一个能自动登录,上传数据的软件,对我这个C/S盲来说,无疑是挖了个大坑,要我往下跳吗.
黑暗啊...
为了生存,就算是毁我容,我也是愿意的,,
CSDN-àGOOGLEàBAIDUàYAHOO
搜!搜!搜!
二天了都没什么到一个好结果,好不容易找到一段自动登录的代码,
看看...
开工了,再不开工,估计这个月的薪水就要8折了
一个星期后,竟然成了…
开心,分享一下,虽然不是什么惊天大作,也算给有和我这样急需朋友一用吧
网站www.ic2ic.com(这个网站是一个电子元件发布平台,免费的)
实现功能 第一次人工登录,自定义上传时间,周期上传数据(刷新自己的产品,让产品排的更高位)
判断是否网络正常
private
bool
IsConnectedToInternet()
... {
int Desc;
return internet.InternetGetConnectedState(out Desc, 0);
}
设置默认页面:
webBrowser1.Navigate( new Uri( " http://www.ic2ic.com/copy.jsp " ));
登录代码:
private void btnlogin_Click( object sender, EventArgs e)
... {
webBrowser1.Document.GetElementById("id").InnerText =txtuser.Text.ToString().Trim();//fill name
webBrowser1.Document.GetElementById("passwd").InnerText =txtpwd.Text.ToString().Trim();//fill pwd
HtmlElement formLogin = webBrowser1.Document.Forms["frmLogin"];
formLogin.InvokeMember("submit");
Thread.Sleep(5000);
herfclick("http://www.ic2ic.com/upload.jsp");//这是登录成功的操作,跳转到//upload.asp
//注意不是直接跳过去的,模拟点击链接
//SESSION不会丢失
herfclick("http://www.ic2ic.com/copy.jsp");
}
模拟点击链接:
private void herfclick( string url)
... {
for (int i = 0; i < webBrowser1.Document.All.Count; i++)
...{
if (webBrowser1.Document.All[i].TagName == "A" && webBrowser1.Document.All[i].GetAttribute("href").ToString().Trim() ==url)
...{
webBrowser1.Document.All[i].InvokeMember("click");//引发”CLICK”事件
break;
}
}
}
运行网页中的JS函数
private void callJsMethod( string jsfun, string jsParameter) // 函数名字,函数参数
... {
HtmlDocument doc = webBrowser1.Document;
doc.InvokeScript(jsfun,new object[]...{jsParameter});
}
填充数据:
private void filldate( string txt)
... {
HtmlElement frmWord = webBrowser1.Document.Forms["frmWord"];//找到from
HtmlElementCollection txtarea = frmWord.GetElementsByTagName("TEXTAREA");
HtmlElementCollection radio = frmWord.GetElementsByTagName("INPUT");
radio[2].InvokeMember("click");//选择radio控件
txtarea[0].InnerText = txt.ToString();
}
... {
int Desc;
return internet.InternetGetConnectedState(out Desc, 0);
}
设置默认页面:
webBrowser1.Navigate( new Uri( " http://www.ic2ic.com/copy.jsp " ));
登录代码:
private void btnlogin_Click( object sender, EventArgs e)
... {
webBrowser1.Document.GetElementById("id").InnerText =txtuser.Text.ToString().Trim();//fill name
webBrowser1.Document.GetElementById("passwd").InnerText =txtpwd.Text.ToString().Trim();//fill pwd
HtmlElement formLogin = webBrowser1.Document.Forms["frmLogin"];
formLogin.InvokeMember("submit");
Thread.Sleep(5000);
herfclick("http://www.ic2ic.com/upload.jsp");//这是登录成功的操作,跳转到//upload.asp
//注意不是直接跳过去的,模拟点击链接
//SESSION不会丢失
herfclick("http://www.ic2ic.com/copy.jsp");
}
模拟点击链接:
private void herfclick( string url)
... {
for (int i = 0; i < webBrowser1.Document.All.Count; i++)
...{
if (webBrowser1.Document.All[i].TagName == "A" && webBrowser1.Document.All[i].GetAttribute("href").ToString().Trim() ==url)
...{
webBrowser1.Document.All[i].InvokeMember("click");//引发”CLICK”事件
break;
}
}
}
运行网页中的JS函数
private void callJsMethod( string jsfun, string jsParameter) // 函数名字,函数参数
... {
HtmlDocument doc = webBrowser1.Document;
doc.InvokeScript(jsfun,new object[]...{jsParameter});
}
填充数据:
private void filldate( string txt)
... {
HtmlElement frmWord = webBrowser1.Document.Forms["frmWord"];//找到from
HtmlElementCollection txtarea = frmWord.GetElementsByTagName("TEXTAREA");
HtmlElementCollection radio = frmWord.GetElementsByTagName("INPUT");
radio[2].InvokeMember("click");//选择radio控件
txtarea[0].InnerText = txt.ToString();
}