• python---获取元素 Xpath


    一/绝对路径定位:查找网页中所需要的内容

        

    #练习1,使用xpath中绝对路径定位进入网页,查找内容
    #导包 xpath
    #绝对路径定位
    from selenium import webdriver
    #设置时间进入
    import time
    #设置浏览器
    driver=webdriver.Firefox()
    #找到链接地址
    driver.get("https://www.baidu.com")
    #找到元素,找寻内容
    driver.find_element_by_xpath("/html/body/div/div/div[5]/div/div/form/span/input").send_keys("魏世轩")
    #回车,查找内容
    driver.find_element_by_xpath("/html/body/div/div/div[5]/div/div/form/span[2]/input").click()
    #设置退出时间
    time.sleep(5)
    #退出浏览器
    driver.quit()
    

      二/利用元素定位:比上一种定位方式简单,

    #练习1,使用xpath中元素定位位进入网页,查找内容
    #利用元素定位
    from selenium import webdriver
    #设置时间进入
    import time
    #设置浏览器
    driver1=webdriver.Firefox()
    #设置地址
    driver1.get("https://www.baidu.com")
    #找到元素,查找元素
    driver1.find_element_by_xpath("//input[@id='kw']").send_keys("别生气")
    #设置查找到元素的时间
    time.sleep(5)
    #查找元素内容
    driver1.find_element_by_xpath("//input[@id='su']").click()
    #退出
    driver1.quit()
    

      三:层级与属性结合

    #层级与属性结合
    from selenium import webdriver
    #设置时间进入
    import time
    #选择浏览器
    driver2=webdriver.Firefox()
    #设置地址
    driver2.get("https://www.baidu.com")
    #查找元素,获取元素
    driver2.find_element_by_xpath("//form[@id='form']/span[1]/input").send_keys("查找元素")
    #搜索元素
    driver2.find_element_by_xpath("//form[@id='form']/span[2]/input").click()
    #设置退出时间
    time.sleep(5)
    #退出
    driver2.quit()
    

      四/逻辑运算符

    #逻辑运算符
    #满足双方条件:and
    #满足一方条件:or
    
    #导包
    from selenium import webdriver
    #设置进入时间
    import time
    #找到浏览器
    driver3=webdriver.Firefox()
    #选择链接
    driver3.get("https://www.baidu.com")
    #获取元素
    driver3.find_element_by_xpath("//input[@id='kw' and @name='wd']").send_keys("魏世轩")
    #查询元素
    driver3.find_element_by_xpath("//input[@id='su' or @class='bg']").click()
    #设置退出时间
    time.sleep(5)
    #退出浏览器
    driver3.quit()
    

      五/注意:

              /:绝对路径(一级一级的找元素)

            //:相对路径(直接查找到父亲的元素)

  • 相关阅读:
    java 各个文件夹的含义
    对称加密 & 非对称加密
    leetcode 155 最小栈
    leetcode 53 最大自序列和
    leetcode 146 LRU 缓存机制
    notebook 开启 有限元学习
    leetcode 232 用栈实现队列
    LINUX装机问题:无法使用“Ctrl+Alt+[F1~F6]”快捷键切换到终端
    JAVA笔记4-static关键字
    C++构造函数、析构函数、虚析构函数
  • 原文地址:https://www.cnblogs.com/wsx123/p/14159393.html
Copyright © 2020-2023  润新知