• selenium常见方法


    1、打开和关闭浏览器

     打开浏览器
       driver=webdriver.Ie()
       driver=webdriver.Chrome()
       driver=webdriver.Firefox()
    关闭浏览器
       driver.close()
     关闭浏览器以及浏览器驱动程序
       driver.quit()

    2、打开 Url

     driver.get("url 地址")

    3、切换框架/窗口(使用 switch_to 包)

     定位到当前聚焦的元素上
       driver.switch_to.active_element()

    切换到 alert 弹窗
       driver.switch_to.alert()

    # 获取alert对话框
    dig_alert = driver.switch_to.alert
    time.sleep(1)
    # 打印警告对话框内容
    print(dig_alert.text)
    # alert对话框属于警告对话框,我们这里只能接受弹窗
    dig_alert.accept()
    time.sleep(1)

     切换到某个 frame
       driver.switch_to.frame(index或 name)

    index从0开始

    切换到主页面
       driver.switch_to.default_content()

     切换到上一层的 frame
       driver.switch_to.parent_frame()

    切换窗口
       driver.switch_to.window(handle)

    如何获取handle?

    通过driver.window_handles  方法获取当前浏览器所有窗口的handle

    通过循环切换窗口判断标题的方法来确定当前窗口是否为目标窗口

    保留当前窗口handle:driver.current_window_handle

    4、页面元素的属性和方法

     获得网页标题
       driver.title()

     获得当前窗口地址栏URL
       driver.current_url

     获得页面元素的文本值(属于属性)
       对象.text

     获得指定属性的值
       对象.get_attribute("属性名")

    获取元素对应的HTML片段

       获取整个web元素的HTML片段

       element.get_attribute("outerHTML")

       获取web元素内部子元素的HTML片段

       element.get_attribute("innerHTML")

    Select(对象)的操作
      需要导入包:from selenium.webdriver.support.select import Select

     根据索引选择元素
       select_by_index

     根据文本选择元素
       select_by_visible_text

     取消所有选项
        deselect_all()

     取消对应 index 选项
       deselect_by_index()

     取消对应 value 选项
       deselect_by_value()

     取消对应文本选项
       deselect_by_visible_text()

     返回第一个选项
       first_selected_option()

     返回所有的选项
       all_selected_options()

     用于键盘输入数据
       element.send_keys("数据")

     点击元素(支持单选按钮、 复选框、 命令按钮)
       element.click()

    5、刷新页面,前进,后退

    driver.refresh()

    driver.forward()

    driver.back()

    6、截屏:

    截取整个页面:driver.get_screenshot_as_file(img_path)

    截取单个元素:  web_element screenshot(img_path)

    # img_path是图片路径,类型str

     7、改变窗口大小

     将窗口最大化
       driver.maximize_window()

     将窗口最小化
       driver.minimize_window()

    获取窗口大小

       size = driver.get_window_size()

     改变窗口大小(传递宽度和高度,单位是像素)

       driver.set_window_size(1100,size['height'])

     8、滚动屏幕

     js语言:window.scrollBy(250,0) 就是横向滚动250个像素

    selenium里面使用js代码

    driver.execute_script('window.scrollBy(200,0)')

  • 相关阅读:
    Atom+latex+中文环境
    pytorch中,不同的kernel对不同的feature map进行卷积之后输出某一个channel对应的多个feature map如何得到一个channel的feature map
    Ubuntu16.04上添加用户以及修改用户所属的组
    shell批处理文件,并将运算结果返回
    pytorch如何能够保证模型的可重复性
    Linux用管道命令对文件的移动
    python中调用多线程加速处理文件
    Python中random模块在主函数中设置随机种子是否对于调用的函数中的随机值产生影响?
    pytorch统计模型参数量
    pytorch使用tensorboardX进行网络可视化
  • 原文地址:https://www.cnblogs.com/crystal1126/p/12849970.html
Copyright © 2020-2023  润新知