Taking screenshots 截图

To capture a screenshot of a page, use the --screenshotflag:
要对页面截图,只需使用--screenshot参数即可:

chrome --headless --disable-gpu --screenshot https://www.baidu.com/# Size of a standard letterhead. 标准的信件比例
chrome --headless --disable-gpu --screenshot --window-size=1280,1696 https://www.baidu.com/# Nexus 5x
chrome --headless --disable-gpu --screenshot --window-size=412,732 https://www.baidu.com/

Running with --screenshotwill produce a file named screenshot.pngin the current working directory. If you’re looking for full page screenshots, things are a tad more involved. There’s a great blog post from David Schnurr that has you covered. Check out Using headless Chrome as an automated screenshot tool.
使用--screenshot参数会在当前目录生成一个名为screenshot.png的文件(编注:截图完成后浏览器会自动退出)。如果需要对整个页面截图的话还需要再加点东西。这里有一个David Schnurr写的博文《使用无界面Chrome作为自动截图工具》可以参考一下。


编注:把鄙人之前那篇文章 提供一个在Selenium截网页长图的实现 稍微改动一下就可以了,之前那篇文章是接入现有浏览器,只需要改成无界面模式(headless)并且改成启动新的浏览器(chrome_options里面不设置debugger_address),网页截图完成后加一个driver.quit()就可以自动关闭浏览器。

from selenium import webdriver
from time import sleep
from base64 import b64decode
from sys import argv# 改成启动新的浏览器,使用headless无界面浏览器模式
options = webdriver.ChromeOptions()
# 增加无界面选项
chrome_options.add_argument('--headless')
# 如果不加这个选项,有时定位会出现问题
chrome_options.add_argument('--disable-gpu')
# 启动浏览器
driver = webdriver.Chrome(options=options)# 访问页面,这里可以改成获取启动参数 argv[1]
driver.get("https://www.baidu.com")# 取出页面的宽度和高度
page_width = driver.execute_script("return document.body.scrollWidth")
page_height = driver.execute_script("return document.body.scrollHeight")# 直接开启设备模拟,不要再手动开devtools了,否则截图截的是devtools的界面!
driver.execute_cdp_cmd('Emulation.setDeviceMetricsOverride', {'mobile':False, 'width':page_width, 'height':page_height, 'deviceScaleFactor': 1})# 执行截图
res = driver.execute_cdp_cmd('Page.captureScreenshot', { 'fromSurface': True})# 返回的base64内容写入PNG文件
with open('screenshot.png', 'wb') as f:img = b64decode(res['data'])f.write(img)# 等待截图完成
sleep(15)# 关闭设备模拟
driver.execute_cdp_cmd('Emulation.clearDeviceMetricsOverride', {})# 关闭浏览器
driver.quit()

CMD命令行Chrome自动网页截图到文件,截图完后自动退出浏览器相关推荐

  1. 批处理命令html文件合并,cmd命令行无损合并批处理TS视频文件

    有时,当我们从Internet下载一些视频文件时,我们发现某些视频格式为.ts格式,并且被分成N个以上的小文件. 特别是,某些视频以.ts格式(MPEG2-TS流)播放. 因此,如果要下载此视频,则需 ...

  2. cmd命令行用copy和xcopy实现文件拷贝/目录复制

    一.初级拷贝copy 1.拷贝单个文件 copy src\*.* dst 实例:源文件路径为d:\src\test.txt,目标文件夹目录为d:\dst,则具体命令为 copy d:\src\test ...

  3. win10,win11后在cmd命令行输入python自动调用微软应用商店

    项目场景: 更新win11后命令行输入python无法调用 问题描述 升级win11后在cmd命令行输入python自动调用微软应用商店 解决方案: 一开始在网上查的方案,删除这个微软应用商店的方案无 ...

  4. 使用cmd命令行实现百度云不限速下载

    需要准备工具:Windows10,CMD命令行,BaiduPCS-GO插件.下载完毕后可以存放到任何位置,建议存放到无中文目录内.然后打开我的电脑-属性-高级系统设置-环境变量-系统变量-Path.点 ...

  5. BaiduPCS-Go 使用CMD命令行全速下载百度云

    Pandownload软件关停公告 大家好,我是PanDownload的作者.很遗憾的告诉大家,由于个别黑心商家将本免费软件有偿售卖,现决定即日起暂停软件使用.本软件自去年2月9号首次发布以来,一直坚 ...

  6. 修改cmd 命令行中的用户名|C:\Users\下的用户名

    修改cmd命令行中的用户名(文末有详细视频教程) 由于我现在换了一个喜欢的用户名,所以我想修改cmd命令行显示的用户名,即c盘用户文件夹下的文件名,但是一般用户文件夹下的名字是无法直接修改的,这里提供 ...

  7. cmd命令行修改windows虚拟内存pagefile.sys

    cmd命令行修改windows虚拟内存 #查看当前设置 wmic pagefile list /format:list #取消自动管理分页文件大小 wmic computersystem where ...

  8. CMD命令行接收用户输入信息

    CMD命令行接收用户输入信息 可以把下面的代码块Copy到一个以bat为后缀的文件中,双击就可以看到效果 ********************************************** ...

  9. 不依赖远程API启动SEER区块链命令行钱包和网页钱包的方法

    不依赖远程API启动命令行钱包和网页钱包的方法 在SEER的见证人操作等需要使用命令行钱包的操作中,我们介绍了通过钱包连接远程API来和区块链交互的方法.类似这样: cli_wallet.exe -s ...

最新文章

  1. 大学生创业难?现在已不是问题!
  2. Debug的T命令在执行修改寄存器SS 的指令时,下一条指令也紧接着被执行。
  3. jenkins+maven+Tomcat+shell构建自动化部署
  4. Win64 驱动内核编程-14.回调监控文件
  5. 《JavaScript高级程序设计》阅读笔记(七):ECMAScript中的语句
  6. Zabbix server is not running 报错的排查
  7. 更改android模拟器sdcard文件夹的权限
  8. Job make U funck Uself!!!
  9. 如何从特定位置开始分享YouTube视频
  10. DELL安装不了mysql_Windows 版本 Mysql 8.x 安装
  11. centos7源码安装ntp_如何安装和配置 Chrony 作为 NTP 客户端?
  12. 蓝桥杯2017年第八届C/C++省赛C组第七题-Excel地址
  13. Atitit.跨平台预定义函数 魔术方法 魔术函数 钩子函数 api兼容性草案 v2 q216  java c# php js.docx
  14. 云龙51单片机视频教程+课件+程序代码+课后作业,零基础入门视频教程 (王云)
  15. **带I2C的LCD1602液晶显示51单片机程序**
  16. 迅捷PDF编辑器怎么编辑修改PDF文件?
  17. 思岚A3雷达官方ROS包将雷达的发布频率改为20HZ
  18. 各大网站和app是如何实现黑白页面效果?
  19. 数据中心的“风火水电”
  20. 用什么软件测试高考成绩,优志愿、知涯升学等志愿填报软件测评出来啦!最好用的是这个...

热门文章

  1. 【数据结构系列】——最近公共祖先问题
  2. 人工智能技术在抽血机器人中的妙用
  3. iOS16.1 实时活动 (Live Activity)灵动岛适配
  4. 合合信息受邀参与中国计算机学会计算机视觉专委会年度学术研讨会
  5. valid 和 validated的使用小结
  6. 牛客寒假营-小沙的身法-(lca+思维)
  7. conda安装albumentations
  8. 【WOA三维路径规划】灰狼算法无人机三维航迹规划【含Matlab源码 2445期】
  9. OpenCVSharp 4.5 单应性矩阵 - 全景照片拼接
  10. 拍摄360全景照片多少钱?全景图片用什么软件看?