分享一个大牛的人工智能教程。零基础!通俗易懂!风趣幽默!希望你也加入到人工智能的队伍中来!请点击http://www.captainbed.net
Browser Driver一般是一个EXE(可执行)程序,或者浏览器的扩展程序,它使用HTTP Server持续监听Selenium2 Commands,其功能主要有:
- 从客户端(执行自动化脚本的计算机)接收HTTP Request
- 确定Selenium Commands对应的用户操作
- 发送操作信息到浏览器
- 获取浏览器返回的执行状态信息
- 发送执行状态信息到客户端
这里说明下“Selenium Commands对应的用户操作”对应的具体内容,以driver.title(获取页面标题)为例:
HTTP Method | URI Template |
---|---|
POST | /session/{session id}/title |
返回的是页面Document的top-level browsing context的title,等同于调用window.top.document.title。
这个过程中Remote End(Browser Driver的Server)对HTTP Request做出响应的执行步骤是:
- 如果当前的top-level browsing context是未打开状态,返回相应的错误代码和错误信息
- 处理用户提示,如果是一个错误提示,则返回它的提示内容
- 将当前top-level browsing context中激活状态页面的Title值赋值给title
- 将数据处理成JSON对象
- 将title的值赋给“value”
- 返回执行成功标志和数据