按钮在Web浏览器中单击

我已经创建了Web浏览器,现在我想通过单击表单上的button1单击Web上的按钮。

private void button1_Click(object sender, EventArgs e) { webBrowser1.Document.GetElementById("search").SetAttribute("value", IP.Text); webBrowser1.Document.GetElementById("").InvokeMember("click"); } 

但我无法从此字符串中获取按钮ID

  

有没有办法解决这个问题?

尝试迭代网页中的所有元素。 当您找到具有所需值的值时,可以单击该元素。

 foreach (HtmlElement el in webBrowser1.Document.GetElementsByTagName("input") { if (el.GetAttribute("value").Equals("→")) { el.InvokeMember("click"); } } 

该网站不会阻止向其发布表单。 所以你总是可以用指向它的表单创建自己的网页。

HTML

  

C#

 private void button1_Click(object sender, EventArgs e) { webBrowser1.DocumentText = "[The HTML from above here]"; webBrowser1.Document.GetElementById("domain").SetAttribute("value", IP.Text); webBrowser1.Document.GetElementById("submit").InvokeMember("click"); } 

如果您打算抓取WHOIS信息。 您必须确保不违反条款和条件。 大多数WHOIS服务不允许自动检查。

如果他们这样做,那就是你想要做的事情,那么你应该考虑使用HttpWebRequest,它会更有效率。 请参阅此处有关如何使用http://swhobby.blogspot.co.uk/2010/03/c-example-of-http-post.html的示例