C# webBrowser 模拟登陆填充操作等(写网页注册机之类的时候要用到)
来源:互联网 发布:三菱触摸屏怎么存数据 编辑:程序博客网 时间:2024/03/29 23:55
判断是否网络正常
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();
}
原理很简单,在webBrowser1的DocumentCompleted事件中判断一下当前完成的url地址,如果当前完成url和当初要打开的url相等,就确定当前网页已经加载完成
//string strURL 要找开的页面的URL
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
if (e.Url.ToString().Trim() == strURL.Trim())
{
//已经加载完成
}
private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
{
if (e.Url.ToString().Trim() == strURL.Trim())
{
//已经加载完成
}
}
控制流动条
webBrowser1.Document.Window.ScrollTo(100, 100);//滚动到你要的坐标,以像素为单位
分类: asp.net,C#
标签: C#, WebBrowser, 登录, 数据填充, 模拟点击链接, 运行JS函数, 检测网页是否载入完成, 判断是否网络正常
绿色通道: 好文要顶 关注我 收藏该文与我联系
1
0
(请您对文章做出评价)
« 上一篇:PHP:SMS移动短信接口二次开发中的插入多行记录操作(含实时进度显示)
» 下一篇:C#使用WebBrowser制作网页游戏辅助工具关键技术分析
» 下一篇:C#使用WebBrowser制作网页游戏辅助工具关键技术分析
posted @ 2010-12-13 17:51 与时俱进 阅读(1499) 评论(0) 编辑 收藏
0 0
- C# webBrowser模拟登陆填充操作等(写网页注册机之类的时候要用到)
- C# webBrowser 模拟登陆填充操作等(写网页注册机之类的时候要用到)
- C# webBrowser 模拟登陆填充操作等(写网页注册机之类的时候要用到)
- 详解抓取网站,模拟登陆,抓取动态网页的原理和实现(Python,C#等)
- C# WinForm Webbrowser 模拟登陆 打卡
- C# webBrowser 控件 操作网页的的按钮
- C# ,webBrowser,登录,数据填充,模拟点击链接,运行JS
- 用webbrowser模拟登陆
- c#网页请求模拟登陆中遇到的bug
- LIBCURL上传文件, 下载文件,打开网页,POST数据,支持https等一系列函数方便各种模拟登陆注册账户
- C#的WebBrowser操作frame
- 豆瓣学习 --模拟http 操作 登陆等
- [参考资料]如何用Python,C#等语言去实现抓取静态网页+抓取动态网页+模拟登陆网站
- 如何用Python,C#等语言去实现抓取静态网页+抓取动态网页+模拟登陆网站
- 如何用Python,C#等语言去实现抓取静态网页+抓取动态网页+模拟登陆网站
- 如何用Python,C#等语言去实现抓取静态网页+抓取动态网页+模拟登陆网站
- HttpURLConnection写的模拟登陆
- C#-webBrowser-登录-数据填充-模拟点击链接-运行JS函数-检测网页是否载入完成
- C++ const修饰函数、函数参数、函数返回值
- 多线程基础
- 世界是属于弱者的
- Slider和Scroll
- logistic回归
- C# webBrowser 模拟登陆填充操作等(写网页注册机之类的时候要用到)
- Nginx如何开启和配置gzip
- Linux设备驱动程序学习(0)-Hello, world模块
- linux下进程与线程绑核
- oracle多表联查对结果合并
- HDU 3038 How Many Answers Are Wrong
- javascript 原型链
- VS 2010智能提示没有了
- apache如何开启gzip为VPS加速