我如何才能在c#中点击网站上的按钮

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

在这段代码中,我使用Web浏览器导航到一个网站。然后我想在网站上点击一个按钮。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Web.UI;
namespace Click_On_Website_Button
{
    public partial class Form1 : Form
    {

        public Form1()
        {
            InitializeComponent();
            webBrowser1.ScriptErrorsSuppressed = true;
            webBrowser1.Navigate("http://www.mysiteexample.com");

        }
        private void Form1_Load(object sender, EventArgs e)
        {
        }
        private void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e)
        {
            HtmlElementCollection classButton = webBrowser1.Document.All;
            foreach (HtmlElement element in classButton)
            {
                if (element.GetAttribute("addMessage") == "button")
                {
                    element.InvokeMember("click");
                }
            }
        }
    }
}

当我做查看页面源时,我搜索addmessage并找到:

http://www.mysiteexample.com

但当我运行我的程序时,它永远不会到达以下行:

element.InvokeMember("click");

当我在网站上的按钮上创建Inspect元素以添加消息时,它就在上面:

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

在源代码视图中,addmessage部分如下所示:

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

我如何才能在c#中点击网站上的按钮

您应该查找ID或Name。。。

GetAttribute ("addMessage") == "button"

除非你有这样的元素,否则永远不会是真的:

<input type="button" ... addMessage="button">