• selenium中页面截图和元素截图的方法


    一、页面截图

      selenium中页面截图的方法比较简单,可以直接使用selenium自带的截图方式save_screenshot(‘filename’)。

    from selenium import webdriver
    driver = webdriver.Chrome()
    driver.get("http://xlrz.chdi.com.cn/wssq/")
    driver.save_screenshot("login.png")

      注意:save_screenshot的文件后缀名只能是png。

      get_screenshot_as_flie("文件路径"),与save_screenshot(‘filename’)功能相似。不过get_screenshot_as_flie("文件路径")可以指定文件路径,而save_screenshot(‘filename’)是默认在项目目录下生成图片。

    二、元素截图

      元素截图需要先安装第三方pillow库,安装命令是“pip install pillow”.代码中需要先导入Image模组。

      例如获取学历认证登录页面,【登录】按钮具体代码如下:

    from selenium import webdriver
    from PIL import Image
    
    driver = webdriver.Chrome()
    driver.get("http://xlrz.chdi.com.cn/wssq/")
    #获取登录页面的截图
    driver.save_screenshot('login.png')
    #定位登录按钮
    imgcode=driver.find_element_by_name("submit")
    #loaction方法获取元素坐标值X,y,且以字典的方式返回
    left=imgcode.location['x']
    top=imgcode.location['y']
    #size方法获取元素的高度和宽度,以字典方式返回
    right=left+imgcode.size['width']
    bottom=top+imgcode.size['height']
    #打开登录页面的截图
    im=Image.open("login.png")
    #获取登录按钮截图
    mg=im.crop((left,top,right,bottom))
    #保存截图,命名未ann
    mg.save('ann.png')
    

      

  • 相关阅读:
    BZOJ 2654: tree
    洛谷P1972[SDOI2009]HH的项链
    洛谷 P3833 [SHOI2012]魔法树
    P2167 [SDOI2009]Bill的挑战
    洛谷 P2145 [JSOI2007]祖码
    洛谷 P4170 [CQOI2007]涂色
    P2024 [NOI2001]食物链
    USACO 2012 December ZQUOJ 24122 Scrambled Letters(二分)
    USACO 2012 December ZQUOJ 24128 Wifi Setup(动态dp)
    2013长春网赛1009 hdu 4767 Bell(矩阵快速幂+中国剩余定理)
  • 原文地址:https://www.cnblogs.com/sunjump/p/15029963.html
Copyright © 2020-2023  润新知