C#网页自动化操作

来源:互联网 发布:恒大淘宝队 编辑:程序博客网 时间:2024/06/05 06:19


    其实网页自动化,说白了就是另外版本的按键精灵,不知道你是否用过没。反正我但是上大学的时候很多人用它抢选修课,功能不是强大,倒是任劳任怨,不断重复的进行点击。所以自动化也没想想那么漂浮。

    好了,废话不说,如正题吧,网页自动化可以使用WebBrowser控件去做,VB,C#,VC++都可以做,不过本人推荐使用C#(我是C++的),因 为C++用这个控件比较复杂,现在又不是做项目,做小软件玩玩,所以当然是越简单越好了。VB呢其实是个挺简单的语言的,可以WebBrowser和 IE7有冲突,而且VB6中对WebBrowser编程时,很多成员列表不会自动列举。所以最后我把目光投放在C#身上,非常幸运的是它没有让我失 望,C#对WebBrowser的封装挺好的,而且和IE7也不冲突,使用类也比VB方便,还有就是对正则表达式的支持了,在HTML页面这么混乱的地 方,要找出自己的东西没有 正则表达式,我想那是相当的痛苦。

    现在从基础讲起吧,理论就不说了,直接说一些简单的功能。

1.让WebBrowser跳转到指定页面

  这可以说是基础中的基础,任何操作都要简历在打开页面的基础上。代码是

WebBrowser1.Navigate(http://blog.sina.com.cn/shushx);

  上面语句让WebBrowser跳转到我的主页

 

2.向文本框中填入指定值

  这个可以做所谓的自动填表,或者自动登录时自动输入帐号,密码。代码是:

WebBrowser1.document.getElementByIdx_x("txtUserName").InnerText = "shushx";

  上面语句是让WebBrowser1找到id号为txtUserName的文本框,然后赋值为shushx

 

其他相关的控件赋值: 作用 SetAttribute 设置下拉框,复选框,多选框数据

下拉框:WebBrowser1.document.getElementByIdx_x("lAge").SetAttribute("value", "question1");复选框WebBrowser1.document.getElementByIdx_x("chkSingle").SetAttribute("Checked", "True");多选框WebBrowser1.document.getElementByIdx_x("chkMang").SetAttribute("checked", "checked");

 

3.点击某个按钮

  这个如点击登录,发布,留言等按钮

WebBrowser1.document.getElementByIdx_x("submit").InvokeMember("click");

 

OK了,就先讲这3个知识点,其实大部分操作都包含在里面的。大家可以想想平时对网页的操作是否就这几个操作的集合?

 

例子1:登录 ->跳转到指定网站的 登录页面

->向帐号、密码框输入 登录信息

->点击登录按钮

 

例子2:发帖

->跳转到指定发帖 地址

->向标题框,内容框填入 要发表的标题和内容

->选择 分类下拉 列表的值

->向 标签框 输入相应内容

->点击发表按钮

所以学会页面跳转,页面元素赋值,页面元素点击,大部分网页自动化你都可以做出来。后面会用实际例子讲解C#中WebBrowser的应用。

原创粉丝点击