selenium 网页截图并保存

from selenium import webdriver
from PIL import Image
from time import sleep

login_12306 = webdriver.Chrome(executable_path=r‘D:\python学习\其他\chromedriver.exe‘)
login_12306.maximize_window() # 设置浏览器全屏
login_12306.get(‘https://kyfw.12306.cn/otn/resources/login.html‘) # 用户发起请求
sleep(0.5)

password_login = login_12306.find_element_by_xpath(‘/html/body/div[2]/div[2]/ul/li[2]/a‘).click()
sleep(0.5)

# 保存网页截图
login_12306.save_screenshot(‘12306_home.png‘)

# 定位验证码图片标签
image_code = login_12306.find_element_by_id(‘J-loginImg‘)

# 验证码图片左上角坐标、验证码图片长宽
location = image_code.location # {‘x‘: 851, ‘y‘: 193}
size = image_code.size # {‘height‘: 36, ‘width‘: 100}

# 电脑分辨率问题,如果 分辨率太大,要乘以相应的倍数
left = location[‘x‘]*1.5
top = location[‘y‘]*1.5
right = left + size[‘width‘]*1.5
bottom = top + size[‘height‘]*1.5

range = (left, top, right, bottom)

i = Image.open(‘12306_home.png‘)
frame = i.crop(range)
frame.save(‘12306_code.png‘)

原文地址:https://www.cnblogs.com/zjj999/p/12612312.html

时间: 2024-07-31 09:28:21

selenium 网页截图并保存的相关文章

selenium网页截图和截图定位

from selenium import webdriver import time from PIL import Image driver = webdriver.Chrome() driver.get('https://www.baidu.com/') time.sleep(3) # 演示一:全网页截图 # driver.save_screenshot('screenshot.png') # driver.quit() # 演示二:定位区块截图 driver.save_screenshot

网页截图分段保存

问题:不知道谷歌浏览器中,将很长的网页分段保存,有插件可供选择.现在只能是通过打印成oxps再转化成图片,有些麻烦.打印成PDF再转图片,图片质量相当糟糕.最好是有那种自定义长度的截图插件,试了20来个没发现一个理想的.爱可可爱生活老师的每日分享,除了使用feeds软件阅读外,每天整理那么多文章并存档,真不像是一个人干的:这里有一段采访介绍https://mp.weixin.qq.com/s/T4NwqjKRb1H4qlzjo2MZag------摘要------------陈光:RSS.Twi

使用PhantomJS实现网页截图服务

这是上半年遇到的一个小需求,想实现网页的抓取,并保存为图片.研究了不少工具,效果都不理想,不是显示太差了(Canvas.Html2Image.Cobra),就是性能不怎么样(如SWT的Brower).后发现无界面浏览器可以满足这个条件,大致研究了一下PhantomJS与CutyCapt,两者都是Webkit内核,其中PhantomJS使用上更方便一些,尤其在Windows平台上,如果在Linux下,从2.0版本后需要自己去机器上编译了(大概要编译3个小时,不得不说,g++就是个渣渣,同样的项目,

网页截图粘贴上传

网页截图粘贴上传 在做生产作业问答平台的时候,有一个功能需求是允许用户在提问或回答时直接截图然后粘贴在编辑框中,然后提交.在开发前端时我使用的uikit,但uikit里面的htmleditor插件对图片上传支持太差,只好放弃.又去看了其他网页编辑控件,但发现这些控件处理图片的方式都是选择网络上图片或者从本地上传的,这对发表文章博客之类的还好,但是对于我所做的问答平台的用户来说,他们更多的只是直接简短的阐述自己遇到的需要主管或他人解答的问题,对格式几乎没有要求,所以越简单越方便越好. 参考知乎的做

如何以Java实现网页截图技术

今天看到某网友关于"如何以Java实现网页截图技术"的咨询帖,由于出现该咨询的地点非常不适合较长回复,故以博文形式回答. 事实上,如果您想以Java实现网页截图,也就是"输入一段网址,几秒钟过后就能截取一张网页缩略图"的效果.那么,您至少有3种方式可以选择. 1.最直接的方式--使用Robot 方法详解:该方法利用Robat提供的强大桌面操作能力,硬性调用浏览器打开指定网页,并将网页信息保存到本地. 优势:简单易用,不需要任何第三方插件. 缺点:不能同时处理大量数据

C#实现网页截图功能

网页截图是很常见的实用功能,今天就为大家共享一个实现浏览器截图的代码,主要程序代码如下所示: private void Form_Load(object sender, EventArgs e) { //接收web url string colle = string.Empty; string url = string.Empty; //获取进程调用传入的命令 string[] args = Environment.GetCommandLineArgs(); string[] args = ne

html2canvas根据DOM元素样式实现网页截图

html2canvas根据DOM元素样式实现网页截图 html2canvas是一个相当不错的JavaScript类库,它使用了html5和css3的一些新功能特性,实现了在客户端对网页进行截图的功能.html2canvas通过获取页面的DOM和元素的样式信息,并将其渲染成canvas图片,从而实现给页面截图的功能. 它不需要来自服务器任何渲染,整张图片都是在客户端浏览器创建.当浏览器不支持Canvas时,将采用Flashcanvas或ExplorerCanvas技术代替实现.以下浏览器能够很好的

[Android] 拍照、截图、保存并显示在ImageView控件中

最近在做Android的项目,其中部分涉及到图像处理的内容.这里先讲述如何调用Camera应用程序进行拍照,并截图和保存显示在ImageView控件中以及遇到的困难和解决方法. PS:作者购买了本<Android第一行代码 著:郭霖>,参照里面的内容完成(推荐该书,前面的布局及应用非常不错).网上这类资料非常多,作者仅仅分享给初学者同时在线记录些内容,希望对大家有所帮助. 首先,设置activity_main.xml为LinearLayout布局且 android:orientation=&q

【锋利的JQuery-学习笔记】切换网页皮肤-且保存于Cookie

切换网页皮肤: html片段: <head> <link rel="stylesheet" href="styles/skin/skin_0.css" type="text/css" id="cssfile" /> </head> <ul id="skin"> <li id="skin_0" title="蓝色"