Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
来自C+的Web自动化+; 我们需要从C++应用程序中做一些相当复杂的Web自动化(登录到应用程序,做一些动作,注销),但是性能非常重要,所以我们正在查看选项。 < > >有没有一种方法直接从C++驱动WebKIT或其他强>无头引擎,而不需要在其中之间添加更多的层(比如Sele+WebDea+网络通信+…)?也许是镀铬的 LI> < P>如果选项1是不可能的,那么从C++()运行WebDriver(用真实浏览器)的最佳方法是什么?_C++_Webdriver_Webautomation - Fatal编程技术网

来自C+的Web自动化+; 我们需要从C++应用程序中做一些相当复杂的Web自动化(登录到应用程序,做一些动作,注销),但是性能非常重要,所以我们正在查看选项。 < > >有没有一种方法直接从C++驱动WebKIT或其他强>无头引擎,而不需要在其中之间添加更多的层(比如Sele+WebDea+网络通信+…)?也许是镀铬的 LI> < P>如果选项1是不可能的,那么从C++()运行WebDriver(用真实浏览器)的最佳方法是什么?

来自C+的Web自动化+; 我们需要从C++应用程序中做一些相当复杂的Web自动化(登录到应用程序,做一些动作,注销),但是性能非常重要,所以我们正在查看选项。 < > >有没有一种方法直接从C++驱动WebKIT或其他强>无头引擎,而不需要在其中之间添加更多的层(比如Sele+WebDea+网络通信+…)?也许是镀铬的 LI> < P>如果选项1是不可能的,那么从C++()运行WebDriver(用真实浏览器)的最佳方法是什么?,c++,webdriver,webautomation,C++,Webdriver,Webautomation,您应该研究(无头WebKit浏览器),它是PhantomJS的WebDriver协议实现 你仍然需要使用其中一个,我不知道C++中的任何语言绑定,但是也许你的团队可以使用一种可用语言来实现自动化。 最坏的情况下,您可以在Python中创建WebDuffor脚本,并从C++应用程序调用Python脚本。在C++中,可以实现Cell请求到SeleServer,并用C++做Web自动化。 首先使用此链接: 也有一些C++库来完成这项工作。 第一次是但最后一次是在3年前,现在似乎不是所有的事情都有效。

您应该研究(无头WebKit浏览器),它是PhantomJS的WebDriver协议实现

你仍然需要使用其中一个,我不知道C++中的任何语言绑定,但是也许你的团队可以使用一种可用语言来实现自动化。

最坏的情况下,您可以在Python中创建WebDuffor脚本,并从C++应用程序调用Python脚本。在C++中,可以实现Cell请求到SeleServer,并用C++做Web自动化。 首先使用此链接:

也有一些C++库来完成这项工作。 第一次是但最后一次是在3年前,现在似乎不是所有的事情都有效。 第二个是,我已经修复了一些bug,并把这个项目作为共享库,这样你就可以在任何C++项目中使用它。 这是一个如何使用我的示例

#包括
使用名称空间webdriverxx;
int main(){
WebDriver firefox=Start(firefox());
火狐
.导航(“http://google.com")
.FindElement(按类别(“类别名称”))
.SendKeys(“你好,世界!”)
.Submit();
返回0;
}

@bozo如果你真的不在乎自己不是在“真正”的浏览器中运行,那么直接使用QtWebKit可能是一个不错的选择。要意识到,这不是一件小事。据我所知,没有任何C++语言绑定,但是只要你有JSON解析库(JSON CPP是相当好的),以及HTTP客户端库,你可以编写自己的语言绑定,很短的顺序。如果WebDebug绑定到C++,而不是使用现有的WebDriver bindding脚本语言,你认为有什么性能优势值得一提吗?我正在寻找高性能,因此希望避免使用Java。您的分叉非常光滑(非常易于使用和清洁!)。但是,根据您的自述,似乎仍然需要selenium服务器。我刚刚尝试过,您的示例将尝试连接到localhost:4444。似乎selenium服务器需要作为侦听端口4444的进程运行。我只是想知道是否有一个更轻量级的解决方案,不需要通过另一个进程传递消息,但可以使用javascript/ajax等导航网站。提前感谢!
#include <webdriverxx/webdriverxx.h>
using namespace webdriverxx;

int main() {
   WebDriver firefox = Start(Firefox());
   firefox
       .Navigate("http://google.com")
       .FindElement(ByClass("class_name"))
       .SendKeys("Hello, world!")
       .Submit();
   return 0;    
}