如何点击网站按钮

本文关键字:按钮 网站 何点击 | 更新日期: 2023-09-27 18:27:59

我首先在构造函数中导航以测试

webBrowser1.ScriptErrorsSuppressed = true;
webBrowser1.Navigate("http://www.tapuz.co.il/forums/forumpage/393");
webBrowser1.DocumentCompleted += webBrowser1_DocumentCompleted;

然后在DocumentCompleted事件中:

void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
            {
                HtmlElementCollection items = this.webBrowser1.Document.GetElementsByTagName("span"); 
                foreach (HtmlElement item in items)
                {
                    if (item.GetAttribute("className") == "addMessage")
                    {
                        webBrowser1.Document.GetElementById("onclick").InvokeMember("click");
                    }
                }
            }

当我在addMessage按钮上创建inspect元素时,我看到:

<span class="addMessage" onclick="location='http://www.tapuz.co.il/forums/addmsg/393/טבע_ומזג_אוויר/מזג_האוויר'">  | הוספת הודעה</span>

但我在电话线上的电话是空的:

webBrowser1.Document.GetElementById("onclick").InvokeMember("click");

我想做的是点击addMessage按钮。

如何点击网站按钮

您需要更改

webBrowser1.Document.GetElementById("onclick").InvokeMember("click");

item.InvokeMember("Click");

项目已经是您想要的元素,所以您只需要调用成员点击它。

HtmlElementCollection elc = this.WebBrowserWindow.Document.GetElementsByTagName("button");
            foreach (HtmlElement el in elc)
            {
                if (el.GetAttribute("type").Equals("submit"))
                {
                    el.InvokeMember("Click");
                    break;
                }
            }