C# 我想以编程方式启动带有URL的浏览器,等待它完成,然后关闭浏览器
我创建了一个HTML5页面,它提供了重要的服务器端功能。不幸的是,它必须在带有画布的HTML5浏览器(Chrome、IE9或Firefox)中运行,才能生成我需要的结果。它是完全自包含的,通过URL获取所需的参数,并准备在OnLoad事件准备发送时关闭。到目前为止还不错 以下过程需要自动化(无人眼或交互),并将在web服务中运行(而不是在浏览器中运行)。理想情况下,我不想在繁忙的等待中浪费额外的周期,也不想仅仅希望过程已经完成而等待很长时间来延迟结果。我需要:C# 我想以编程方式启动带有URL的浏览器,等待它完成,然后关闭浏览器,c#,html,firefox,internet-explorer-9,chromium,C#,Html,Firefox,Internet Explorer 9,Chromium,我创建了一个HTML5页面,它提供了重要的服务器端功能。不幸的是,它必须在带有画布的HTML5浏览器(Chrome、IE9或Firefox)中运行,才能生成我需要的结果。它是完全自包含的,通过URL获取所需的参数,并准备在OnLoad事件准备发送时关闭。到目前为止还不错 以下过程需要自动化(无人眼或交互),并将在web服务中运行(而不是在浏览器中运行)。理想情况下,我不想在繁忙的等待中浪费额外的周期,也不想仅仅希望过程已经完成而等待很长时间来延迟结果。我需要: 使用C#打开带有URL的浏览器(最
有人知道我如何实现这一目标吗?再说一遍,在任何过程中都没有人参与,没有人会看到页面或以任何方式与之交互。页面只在服务器上运行,永远不会部署到客户机上。自动化浏览器-这就是为什么。我认为这将是一个好主意适合该任务,并且有很好的C#支持。它甚至可以使用Selenium RC服务器在远程机器上运行浏览器。自动化浏览器就是这样。我认为它非常适合该任务,并且有很好的C#支持。它甚至可以使用Selenium RC服务器在远程机器上运行浏览器。我建议不要这样做o使用WebBrowser控件加载HTML。一旦获得数据,使用ObjectForScript调用c#方法在完成时通知 看 您甚至不必显示webbrowser控件
如果您有任何问题,请告诉我。希望能有所帮助!我建议使用WebBrowser控件加载HTML。一旦您返回数据,请使用ObjectForScript调用c#方法,在完成时通知 看 您甚至不必显示webbrowser控件
如果你有任何问题,请告诉我。希望有帮助。
你应该考虑使用<代码> WebBubue/Cux>控件,它基本上与你的系统上安装的IE版本相同,但是可以编程控制。如果你可以从桌面应用程序中使用它,就可以使用它,而不是在服务中运行代码时使用它。。我会这样做,但我不确定html5,但我想它会起作用,这是一个很好的起点。你可能可以在IE中使用,但仍然可以使用应用程序中的IE组件。是的,WebBrowser就是我所说的wait to not busy呼叫。wait Toll not busy busy返回到真的很早。如果你知道其他什么为了尝试这一点,我很感兴趣。不过,我不需要与页面交互,只需打开页面,等待它完成,然后关闭它。我没有应用程序,没有按钮,没有文本字段,没有用户交互。没有框架。整个东西都是从web服务中启动的,而不是从页面,也不是从浏览器启动的。整个页面必须是完整的从c*开始,运行到完成,然后关闭C,让C知道它什么时候完成。你应该考虑使用<代码> WebBubue/Cux>控件,它基本上与你的系统上安装的IE版本相同,但是可以编程控制。如果你可以从桌面应用程序中使用它,就不要使用它。在服务中取消运行。我可以这样做,但不确定html5,但我想它会起作用,这是一个很好的开始。你可能可以在IE中使用,但仍然可以使用应用程序中的IE组件。是的,WebBrowser就是我所说的wait-unt-busy呼叫。wait-unt-busy返回到早期。如果你知道还有什么可以尝试的话,我很感兴趣。不过,我也不需要与页面交互,只需打开页面,等待页面完成,然后关闭它。我没有应用程序,没有按钮,没有文本字段,没有用户交互,没有框架。整个东西都是从web服务中启动的,不是从页面,也不是从浏览器启动的整个页面必须从c#启动,运行到完成,然后关闭-并让c#知道它何时完成。我不希望在启动页面后与它进行交互。简单地启动页面,等待它完成,然后关闭它,Selenium似乎有严重的杀伤力。Selenium是一个测试工具(单击按钮,填写文本字段等)。我也只是研究了一下Selenium。我不想启动一个测试环境,这样就需要人工交互。我没有运行测试。这是web服务的一部分。该服务必须创建浏览器,启动页面,等待完成,然后关闭页面-所有这些都不需要人工交互。Selenium不需要hum一种交互,它被设计成脚本化的——你可以通过C#使用WebDriver API来实现。Selenium不仅仅用于测试,它还用于各种浏览器自动化。我不希望