好久没有写过日志了,今天写一点自己在webbrowser这个控件上的研究。前前后后断断续续研究过这个控件很久,无非是想做个自动点击的工具,本人编程底子薄,纯粹也就是自己自娱自乐吧。
首先页面:http://weibo.com/u/2546043520 (不一定可以访问到)
加关注那个按钮的html代码是:
<a class="W_btn_b" title="加关注" action-type="follow" action-data="uid=2546043520&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都可以按照这样的方法来处理。