gpt4 book ai didi

c# - 使用 C# 和 WebBrowser 实现网站自动化

转载 作者:太空狗 更新时间:2023-10-29 20:29:13 25 4
gpt4 key购买 nike

我正在构建一个应用程序,它在 WebBrowser 控件中打开一个网站,然后在字段中放置一些文本,然后依次点击几个按钮提交。

看看下面的代码...

var doc = webBrowser1.Document.GetElementById("ddlOnBoro");doc.SetAttribute("SelectedIndex", "3");var temp = doc.InvokeMember("change");doc = doc.Document.GetElementById("iddOnstreet_txTextBox");doc.SetAttribute("value", "ASTOR PLACE");var adoc = doc.Document.GetElementById("Button6");var getCrossStreets = adoc.DomElement as mshtml.HTMLInputButtonElement;adoc.RaiseEvent("onclick");

前 3 行和后 3 行工作正常,甚至中间 2 行也工作正常,但是当我在最后一行代码中使用 RaiseEvent("onclick") 时,文本框的值在提交之前变为空白,即使我已将其设置在第 5 行的代码。

该网站内置于 ASP.NET 中,我认为这是 ViewState 搞砸了。

有什么想法吗?

最佳答案

http://watin.org/基于 Watir 并允许对网站进行单元测试。它还可以用于输入表单数据、从网站抓取数据等。它非常适合与 C# 一起使用。请不要将此用于恶意目的。

如果您在 IE 中的网站上,单击按钮时文本框会被清除吗?如果您尝试手动复制您的程序正在尝试执行的操作,但没有发生同样的事情,那么您可能会遗漏一些东西。 例如,在前三行中,您调用了“change”事件(我认为这实际上是“onchange”),但您在接下来的两行中没有这样做。只需查看它,这是您的代码与手动执行代码之间的唯一区别。

关于c# - 使用 C# 和 WebBrowser 实现网站自动化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3378449/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com