我正在尝试在 .Net 中使用无头浏览器,我需要它来执行 JavaScript,因为我需要使用它读取的信息是通过 AJAX 加载的。经过一些研究,我相信我最好的选择是 HtmlUnit。我主要按照 Steven Sanderson 的博客http://blog.stevensanderson.com/2010/03/30/using-htmlunit-on-net-for-headless-browser-automation/中的说明进行操作,效果很好。但是,尽我所能,我无法让它等待 JavaScript 加载。基本上在从选择框中选择某些内容后,会触发 AJAX 请求并填充另一个选择框。HtmlUnit 永远不会看到新选项。
我已经尝试了常见问题解答http://htmlunit.sourceforge.net/faq.html#AJAXDoesNotWork中所有示例的组合,所以我只能假设这是一个问题,因为它已被转换为在 .Net 中运行。我希望有人在这方面有一些经验,可以阐明什么是错误的。我觉得我在使用 HtmlUnit 时走的是正确的道路,并且之前已在此处推荐过.NET 的无头浏览器(用于自动 Web-UI-Tests)吗?和无头互联网浏览器?但我已经走到了死胡同。
因此,如果有人对支持 JavaScript 的 headles 浏览器有更好的选择,以及如何让 HtmlUnit 等待 JavaScript 的想法,或者甚至只是一些关于如何进一步调试的建议。
谢谢。
西蒙