Selenium cdp command

Selenium执行cdp命令,driver.execute_cdp_cmd用法

Chrome自带的开发者工具DevTools功能非常强大。有时候我们在使用Selenium操作浏览器时需要通过调用一下DevTools的方法来完成一些设置,如模拟移动设备,弱网模拟等等。
Selenium的WebDriver类中有一个execute_cdp_cmd(self, cmd, cmd_args)方法可以用来执行Chrome开发这个工具命令。

cdp即Chrome DevTools Protocal, Chrome开发者工具协议,API文档可参考:https://chromedevtools.github.io/devtools-protocol/tot/Emulation

def save_full_screen()page_width = $driver.execute_script("return document.body.scrollWidth")page_height = $driver.execute_script("return document.body.scrollHeight")# modify device size$driver.execute_cdp('Emulation.setDeviceMetricsOverride', {'mobile': false, 'width': page_width, 'height': page_height, 'deviceScaleFactor': 1})# capture Full screenres = $driver.execute_cdp('Page.captureScreenshot', { 'fromSurface': true})sleep(0.5)# save base64 data to PNGt = Time.nowfilename = t.strftime("%Y%m%d-%H-%M-%S-") <<t.nsec.to_s << ".png"File.open("c://full_screen_shot#{filename}.png", 'wb') do |f|f.write(Base64.decode64(res['data']))end# reset device parameter$driver.execute_cdp('Emulation.clearDeviceMetricsOverride', {})# capture view scale screenres = $driver.execute_cdp('Page.captureScreenshot', { 'fromSurface': true})sleep(0.5)File.open("#{SCREEN_SHORT_FOLDER}/view_scale_shot.png", 'wb') do |f|f.write(Base64.decode64(res['data']))end end

Selenium save full screenshot相关推荐

  1. One order save debug screenshot

    Created by Wang, Jerry, last modified on Dec 14, 2014 action determination debug action framework ma ...

  2. 使用Selenium Webdriver进行全屏截图

    在任何网页测试人员中,执行效果最好的操作之一就是对网页进行截图. 每当测试人员发现并报告错误时,如果不支持该问题的屏幕截图甚至视频,就不会认真对待该错误. 不论您进行的测试类型是什么,包括硒自动化测试 ...

  3. 大型情感剧集Selenium:8_selenium网页截图的四种方法

    有时候,有时候,你会相信一切有尽头-当你的代码走到了尽头,那么保留最后一刻的状态尤为重要,此时你该如何操作?记录日志-没有将浏览器当前的状态进行截图来的直观! 那么,selenium截取截屏,有哪些方 ...

  4. 译Selenium Python Bindings 6 - WebDriver API

    本章涉及Selenium WebDriver的所有接口. Recommended Import Style 推荐的导入风格如下: from selenium import webdriver 然后,你 ...

  5. python+selenium自动化软件测试(第2章)

    目录 2.1 操作元素基本方法 2.1.1 打开网页 2.1.2 设置休眠 2.1.3 页面刷新 2.1.4 页面切换 2.1.5 设置窗口大小 2.1.6 截屏 2.1.7 退出 2.1.8 加载浏 ...

  6. python+selenium自动化软件测试

    1.1 环境搭建 1.1.1 selenium简介 Selenium 是用于测试 Web 应用程序用户界面 (UI) 的常用框架.它是一款用于运行端到端功能测试的超强工具.您可以使用多个编程语言编写测 ...

  7. Selenium学习_常用场景代码示例

    启动Chrome浏览器,并链接到Baidu IWebDriver chromeSession = new ChromeDriver(@"C:\realUserTool\resource\ch ...

  8. linux截图工具带编辑器,Screenshot Editor

    最后更新:2019-11-05 当前版本:2.3.3 应用大小:3.1 MB 应用语言:多国语言[中文] 系统要求:OS X 10.7 或更高 应用描述: 简单易用的截图编辑器 Screenshot ...

  9. 爬虫、网页测试 及 java servlet 测试框架等介绍

    scrapy 抓取网页并存入 mongodb的完整示例: https://github.com/rmax/scrapy-redis https://github.com/geekan/scrapy-e ...

最新文章

  1. linux上安装mysql5.5_【Python】Linux安装Mysql5.5
  2. I/O模型之一:Unix的五种I/O模型
  3. [导入]IIS无法显示asp页面
  4. Android 设计模式 - 观察者模式
  5. ABAP--Smart Forms多语言翻译
  6. Windows 7 Bcdedit 应用
  7. Python无限播放励志语句
  8. “终端服务器超出了最大允许连接数”的解决方法汇总
  9. 从零开始学习CTF——CTF是什么
  10. Pytorch并行计算(一): DataParallel
  11. Data Migration 架构
  12. vue实现搜索框记录搜索历史_Vue 实现输入框新增搜索历史记录功能
  13. 电脑重装系统一启动就黑屏了该怎么办
  14. Exec format error问题的原因
  15. 框架:什么是框架?为什么要使用框架?框架有什么作用
  16. Keras模型中数据维度报错
  17. Windows开启和关闭hyper-v
  18. python画小狗代码_用Python画一只有点方的小狗狗——turtle库circle()函数实践
  19. 给文件夹重命名python
  20. 交互式分割: Interactive Object Segmentation with Inside-Outside Guidance

热门文章

  1. 市场调研—2021-2027全球与中国高效液相色谱(HPLC)分析试剂盒市场现状及未来发展趋势
  2. svn: E155007: 'F:\XXX' is not a working copy directory 解决方法
  3. Frenet坐标系相关知识系统学习
  4. 详细教你wifi如何查看连接人数 wifi查看连接人数的方法
  5. 电脑怎么截图?常见的4种截图方法分享!
  6. Linux 环境进程间通信(三):消息队列
  7. DSGdata Inc.公司简介
  8. 分子模拟的理论与实践_超级电容器储能机制的理论计算研究
  9. 文件上传(拖拽上传)
  10. 通过Ip纯真库获取地址详细信息