python如何截长图_python+selenium实现长截图
Python selenium操作浏览器全屏截图
最近碰到一个问题,需求是把做好的报告发到领导邮箱(只能发邮箱,不接受邮箱链接等方式),大家都知道outlook对js是不支持的,只支持最简单的html样式,最后选定的方法是截图,但是报告可能很长啊,怎么能一次性全截下来呢,请大家往下看
首先本次实现是用的python3.6+selenium+chrome,python的安装和python库的安装就不多说了。用代码控制chrome的时候需要下一个driver,下载地址:http://chromedriver.storage.googleapis.com/index.html
下载之前要注意看看你电脑上装的chrome版本号,把下好的driver放到跟chrome.exe一个文件夹就行了
接下来直接上代码
# -*- coding: utf-8 -*-
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import os
import time
def get_image(url, pic_name):
#chromedriver的路径
chromedriver = r"C:\Users\name\AppData\Local\Google\Chrome\Application\chromedriver.exe"
os.environ["webdriver.chrome.driver"] = chromedriver
#设置chrome开启的模式,headless就是无界面模式
#一定要使用这个模式,不然截不了全页面,只能截到你电脑的高度
chrome_options = Options()
chrome_options.add_argument('headless')
driver = webdriver.Chrome(chromedriver,chrome_options=chrome_options)
#控制浏览器写入并转到链接
driver.get(url)
time.sleep(1)
#接下来是全屏的关键,用js获取页面的宽高,如果有其他需要用js的部分也可以用这个方法
width = driver.execute_script("return document.documentElement.scrollWidth")
height = driver.execute_script("return document.documentElement.scrollHeight")
print(width,height)
#将浏览器的宽高设置成刚刚获取的宽高
driver.set_window_size(width, height)
time.sleep(1)
#截图并关掉浏览器
driver.save_screenshot(pic_name)
driver.close()
#你输入的参数
url = 'https://movie.douban.com/top250'
pic_name = r'D:\image.png'
get_image(url, pic_name)
很简单的几行代码,随意截任何网站的图片,通过这个方式也可以截网页任意部位的图,怎么样你学会了吗?觉得有用的话点赞关注哟
python如何截长图_python+selenium实现长截图相关推荐
- 怎么将PPT转换成一个长图,PPT转长图教程
ppt是我们经常用到的一种文档格式,有时候我们需要将ppt成JPG和png格式的长图,那么大家知道怎么样才能将ppt转JPG和png格式的长图呢?其实步骤很简单,无需下载任何转换软件,在线即可轻松转换 ...
- python实现图片拼接长图_Python 拼接多张尺寸大小不一样的图片制作长图
from os import listdir from PIL import Image # 获取当前文件夹下所以图片 ims = [Image.open('../images/%s' % fn) f ...
- python画k线图_python画k线图
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! import datetime import pandas_datareader ...
- 【基础知识】截长图的方法以及防止截图时下拉框自动收回的方法
截长图的方法: 博主之前使用的tim,不具备截长图的功能,之后百度了很多的方法,最后发现QQ的截长图功能最好用,很不解,tim不应该是偏向于办公吗,这种功能竟然还能阉割? 使用工具:QQ最新版 使用方 ...
- python怎么变成动图_python可以做动图吗
ImageMagick 是一套功能强大.稳定而且开源的工具集和开发包,可以用来读.写和处理超过200种基本格式的图片文件,包括PNG,JPEG,GIF,HEIC,TIFF,DPX,EXR,WebP,P ...
- python matplotlib 画滚动图_Python下matplotlib常见图形绘制
Matplotlib 是 Python 的一个2D绘图库,可以帮助我们绘制各种图形,下面介绍一些最常见的数学图形绘制方法. 1.直线图 importnumpy as npimportmatplotli ...
- python画k线图_Python绘制K线图
不管是对量化分析师还是普通的投资者来说,K线图(蜡烛图)都是一种很经典.很重要的工具.在K线图中,它会绘制每天的最高价.最低价.开盘价和收盘价,这对于我们理解股票的趋势以及每天的多空对比很有帮助. 一 ...
- ih5长图如何滑动_长图怎么一键截取?这样做很简单
不管工作还是日常交流中,往往需要用到截图来进行更加详细的描述,甚至有时需用截取多张截图.截图这种常规操作,这里就不多说了,今天要分享的是如何截取长图,例如下面这个样子! ↑↓上下滑动试试 下面跟大家分 ...
- android 加载大长图,android加载长图片的方法
1.很多应用都有加载一张长图片,用户可以上下拉动图片. 自己没有好的想法,那只好百度咯.结果都说用webview来实现,好吧那就只好先试一下了. 2.自己写了简单的html,然后webview加载.图 ...
- android 照片拼接长图_长图拼接app下载 长图拼接制作 for Android v2.6.1 安卓版 下载-脚本之家...
长图拼接制作app是一款操作很方便的长截图拼接软件.长图拼接app能够支持对截图进行裁剪和编辑,长图拼接制作app还有多种拼接模板和框架供大家选择,有需要的用户赶快下载体验吧! 软件介绍 长图拼接制作 ...
最新文章
- SCOI2009 最长距离
- 2022-2028年中国车载充电机行业深度调研及投资前景预测报告
- c# 给文件/文件夹 管理用户权限
- kubernetes mysql pxc_K8S使用operator部署和管理Percona - PXC集群
- Antlr中文文档初稿2(《ANTLR树分析器》)
- sublime基本命令和使用
- python 字符串子串_Python字符串子字符串
- jQuery -- 光阴似箭(三):jQuery 操作 HTML 元素和属性
- 黑莓手机使用手册【转】
- 《沃顿商学院谈判课》读书笔记
- uint8_t范围_uint8_t / uint16_t / uint32_t /uint64_t 是什么数据类型 - 大总结,看完全明白了...
- 2022盘点工作室常用的API数据接口开发平台
- 计算机专业学生如何做项目,计算机专业学生如何申请科研项目?
- excel单元格内容拆分_自学EXCEL小技巧003→单元格内容拆分
- 个人工作SQL整理(大佬勿进)
- java单根结构_对象导论:单根继承结构
- Between Worlds 3 太阳与地球
- 【业务安全-03】业务逻辑漏洞之暴力破解(Burte Force)
- Java——MVC框架
- 【JAVA】-- 期末考试复习题含答案(每章对应题、选择、填空、简答、编程)(下)