C# webbrowser使用

本文介绍了如何使用C# Webbrowser控件模拟点击HTML页面上没有ID和name属性的按钮。通过遍历元素并根据title属性进行匹配,实现自动化点击操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

C# webbrowser控件点击页面按钮

  1. 从工具箱中,将Webbrowser控件拖入Form窗口。
  2. 在Webbrowser控件的属性对话框中,将Url属性设置为对应的网址
  3. 然后在form窗体中双击webbrowser控件,在默认的webBrowser_DocumentCompleted函数中添加如下代码
private void webBrowser_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)  
{  
   // 根据id找到对应的元素  
   HtmlElement htmlEle = webBrowser.Document.GetElementById("sign-in");  
  
   if (htmlEle != null)  
   {  
       // 激活html元素的 click 成员  
       htmlEle.InvokeMember("click");  
    }  
}  


 

C# webbrowser 模拟点击无ID 无name的html元素按钮

好久没有写过日志了,今天写一点自己在webbrowser这个控件上的研究。前前后后断断续续研究过这个控件很久,无非是想做个自动点击的工具,本人编程底子薄,纯粹也就是自己自娱自乐吧。

首先页面:http://weibo.com/u/2546043520 (不一定可以访问到)

加关注那个按钮的html代码是:

<a class="W_btn_b" title="加关注" action-type="follow" action-data="uid=2546043520&amp;fnick=黄力勋弘贵" href="javascript:void(0);"><span><img class="icon_add addbtn_g" src="http://img.t.sinajs.cn/t4/style/images/common/transparent.gif"><em class="vline"></em><img src="http://img.t.sinajs.cn/t4/style/images/common/transparent.gif" class="icon_add addbtn_b">加关注</span></a>

============

建议大家用chrome来分析网页的元素代码。

这个按钮没有ID,也没有name,所以不是特别好处理,所以我的思路是遍历所有的元素,然后根据其他项来匹配到这个按钮。如果有ID,或者name就可以用这个方法: webBrowser1.Document.GetElementById("login_submit_btn")

 

我的代码:

 private void button1_Click(object sender, EventArgs e)

        {

            HtmlDocument document = this.webBrowser1.Document;//获取控件中的html文档,类似于网页中的document对象。

            HtmlElementCollection elems = webBrowser1.Document.GetElementsByTagName("a");//根据标签<a>来遍历元素。

            foreach (HtmlElement em in elems)                   //遍历所有元素

            {

                if (em.GetAttribute("title") == "加关注")       //根据title来匹配,因为加关注只有一个按钮

                {

                    em.InvokeMember("click");

                }

            }

        }

=================

其他的类似没有ID,没有name都可以按照这样的方法来处理。

 

 

判断网页是否加载完毕

 if (webBrowser1.ReadyState == WebBrowserReadyState.Complete)
            {
                webBrowser1.Document.GetElementById("btnLogin").InvokeMember("onclick");
            }


 

ok

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值