我想为该网站创建一个机器人,该站点添加一个带有 id 的部件,我希望当该部件添加到站点时单击此部件按钮。 我的代码检查了一个网站以找到此 id ,直到未找到该 id 为止,该网站正在刷新,并且当找到 id 时,单击<网站上的em>按钮。
这是我的代码:
public ChromiumWebBrowser browser;
public void InitBrowser()
{
timer.Stop();
browser.Reload();
browser.FrameLoadEnd += (sender, args) =>
{
//Wait for the MainFrame to finish loading
if (args.Frame.IsMain)
{
var pageQueryScript = @"
(function(){
var selection = document.querySelector('#test');
if (selection !== null) {
return '1';
}
})()";
var scriptTask = browser.EvaluateScriptAsync(pageQueryScript);
scriptTask.ContinueWith(a =>
{
if (a.Result.Success && a.Result.Result != null)
{
timer.Stop();
var loginScript = @"document.querySelector('button').click();";
browser.EvaluateScriptAsync(loginScript).ContinueWith(b =>
{
timer.Stop();
Console.Write("*");
});
}
else
{
timer.Start();
}
});
}
};
timer.Start();
}
public Form1()
{
Cef.Initialize(new CefSettings());
browser = new ChromiumWebBrowser("file:///G:/2.html");
this.Controls.Add(browser);
browser.Dock = DockStyle.Fill;
browser.Height = 500;
browser.Width = 500;
browser.Location = new Point(0, 0);
InitializeComponent();
}
private void timer_Tick(object sender, EventArgs e)
{
InitBrowser();
}
private void Form1_Load(object sender, EventArgs e)
{
timer.Start();
}
它可以正常工作,但是它单击了网站刷新的按钮编号,我想单击此按钮一次。 我该如何解决这个问题。