zoukankan      html  css  js  c++  java
  • 常用元素操作api之调用javascript操作(九)

    from selenium import webdriver
    import time
    from selenium.webdriver.support.select import Select
    from selenium.webdriver.common.by import By
    from slenium_jichu01 import tools
    # 调用javascript
    driver = webdriver.Chrome()
    driver.get('https://baidu.com')
    driver.implicitly_wait(30)
    #演示1,
    driver.execute_script('alert("我爱学习,学习爱我")')
    time.sleep(2)
    driver.switch_to.alert.accept()
    #演示2,输入框高亮显示
    wl = driver.find_element_by_name('wd')
    # tools.highlight_element(driver,wl)
    # driver.execute_script("arguments[0].style.border='5px solid red'",wl)#加边框
    #演示3,获取元素属性
    # js= "var user_input = document.getElementById('su').getAttribute('id')"
    js_get_name = "return document.getElementById('kw').getAttribute('name')"
    js_get_class = "return document.getElementById('kw').getAttribute('class')"
    print(driver.execute_script(js_get_name))
    print(driver.execute_script(js_get_class))

    # 演示4:滚动条的处理
    wl=driver.find_element_by_name('wd').send_keys('测试开发')
    driver.find_element_by_id('su').click()
    time.sleep(2)
    # driver.execute_script("document.body.scrollTop=200;")
    # js="window.scrollBy(0,300)"
    # driver.execute_script(js)
    # time.sleep(2)
    # js="window.scrollBy(0,400)"
    # driver.execute_script(js)
    # time.sleep(2)
    # js="window.scrollBy(0,200)"
    # driver.execute_script(js)
    # time.sleep(2)
    # js="window.scrollBy(0,-200)"
    # driver.execute_script(js)
    # time.sleep(2)
    # js="window.scrollBy(0,-400)"
    # driver.execute_script(js)
    # time.sleep(2)
    # js="window.scrollBy(0,-300)"
    # driver.execute_script(js)
    # time.sleep(2)

    #封装一个滚动的方法
    def scroll(driver,height):
    js = "window.scrollBy(0,"+str(height)+")"
    driver.execute_script(js)
    time.sleep(2)

    scroll(driver,100)
    scroll(driver,200)
    scroll(driver,500)
    scroll(driver,-100)
    scroll(driver,-200)
    scroll(driver,-500)
    #直接滚到底部
    scroll(driver,2000)
    scroll(driver,-2000)





  • 相关阅读:
    Intellijidea建javaWeb以及Servlet简单实现
    PHP关于文件与文件夹(1) 写入文件 文件权限 三、锁定文件
    mysql 时间戳格式化函数from_unixtime使用说明
    Ansible 2.0公布
    如何获取板子上独有的ID号EXYNOS4412/Imx6ul【转】
    2.7 xargs和exec详解【转】
    __setup 在内核中的作用【转】
    Linux __setup解析【转】
    c语言中 %p的含义【转】
    函数 devm_kzalloc()【转】
  • 原文地址:https://www.cnblogs.com/tingting-yang/p/13335852.html
Copyright © 2011-2022 走看看