zoukankan      html  css  js  c++  java
  • selenium定位伪类元素::before

    前言

    平时用selenium的时候一般都是直接用xpath获取需要点击的元素的位置
    但是的项目里用到了一个元素,检查以后发现是个伪元素
    网上百度查的方法都不管用,思路也没有说明白,导致摸索了很长时间
    感谢博主提供的思路:点击跳转

    实现

    我们先看下具体的栗子,这里我选用的是【百度疫情实时大数据报告】,后期可能会过期,但具体思路大家明白就好。

    打开网址,默认是选中的是【默认确诊】,这里我想点击【累计确诊】。
    我们可以看到,当前元素是属于label标签的

    使用css选择器时,选择的是“div节点”(父节点)的位置,然后再在div(父节点)的选择后边加上div的子节点“i”(伪元素存在的节点)

    所以我们的css选择器的写法是:div.Virus_1-1-264_3W7bs_>label,这里的意思就是(父类div.父类calss>子元素label)

    import time
    
    from selenium import webdriver
    
    driver = webdriver.Chrome()
    driver.get('https://voice.baidu.com/act/newpneumonia/newpneumonia/?qq-pf-to=pcqq.group')
    # 如果需要切换回【现有确诊】,只需要重复执行这段代码。
    driver.find_element_by_css_selector('div.Virus_1-1-264_3W7bs_>label').click()
    
    time.sleep(3)
    driver.close()
    
  • 相关阅读:
    内存屏障指令
    k64 datasheet学习笔记45---10/100-Mbps Ethernet MAC(ENET)之功能描述
    k64 datasheet学习笔记45---10/100-Mbps Ethernet MAC(ENET)之概述
    Haskell 笔记 ③
    UVA 11754 (暴力+中国剩余定理)
    Haskell 笔记 ②
    Haskell 笔记 ①
    HDU 1072(记忆化BFS)
    POJ 2096 (概率DP)
    HDU 4405 (概率DP)
  • 原文地址:https://www.cnblogs.com/se7enjean/p/13024969.html
Copyright © 2011-2022 走看看