使用webbrowser单击网页中的按钮

时间:2013-06-27 05:05:38

标签: c# browser webpage getelementbyid invokemember

所以我需要做的就是使用这段代码:

WebBrowser browser = new WebBrowser();
browser.Navigate("www.somthing.com");
browser.Document.GetElementById("ID").InvokeMember("click");

然后我需要在页面中找到按钮的ID并放入我的代码但我的问题是一些按钮没有Id的!那我该怎么办?他们只有类型和类以及其他一些东西,但没有Id。我意识到一些按钮可能是java,也许这就是为什么我不能按照通常的方式点击它们。所以你知道我该怎么办?

1 个答案:

答案 0 :(得分:3)

你说你的按钮元素有className,你可以这样得到这个元素:

public Form1()
        {
            InitializeComponent();
            webBrowser1.Navigate("To your register account url");
        }
        int on = 0;
        private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            foreach (HtmlElement btn in webBrowser1.Document.GetElementsByTagName("button"))
            {
                if (btn.GetAttribute("className") == "yourclassname")
                {
                    btn.InvokeMember("Click");
                    break;
                }
            }
        }