当前位置: 首页 > 工具软件 > Ghost Driver > 使用案例 >

selenium-开源项目ghost driver

陶原
2023-12-01

地址:https://github.com/detro/ghostdriver


2.Phantomjs Webdriver

webdriver会开启一个http服务,其他语言可以通过这种http的方式,以WebDriver Wire Protocol协议(貌似是selenium规定的远程交互协议?)与phantomjs交互,这种方式是目前phantomjs自带的

webdriver源自于开源项目ghost driver,并合并到phantomjs。对于java语言,ghostdriver还封装了phantomjs的java库phantomjsdriver,这个库基于selenium的接口与协议。使用过selenium java api的朋友应该能直接用。

应该说,selenium的headless方案就是phantomjs + phantomjsdriver了吧。

看了下phantomjsdriver的api,封装了常用的几个功能,比如click,getTitle,findElement等。没封装的可以用执行js命令的api方式来调用。

性能上,主要看webdriver内部到底是怎么实现的。webdriver使用javascript语言写的(哇靠javascript各种全栈啊),肯定不是每个session一个进程了。如果一台webdriver撑不住,貌似可以用Selenium Grid hub来做中转,链接多台webdriver。

关于如何使用,直接看test模块

结论

很明显拉,webdriver比较适合做成服务,或者批量跑一些东西。当然可控性话,充分利用phantomjs的功能,还是直接用js脚本执行。

 类似资料: