zoukankan      html  css  js  c++  java
  • 前端css定位讲解大全

    首先谷歌安装工具 

    https://chrome.google.com/webstore/detail/chropath/ljngjbnaijcbncmcnjfhigebomdlkcjo?authuser=1  

    为什么要安装chropath这是为了辅助定位用的

     学习selenium 框架

    定位方式有18种定位方式

    8种单数

    id定位例子  1

    代码图片为

    from selenium import webdriver
    driver=webdriver.Chrome()
    driver.get("https://account.chsi.com.cn/passport/login?service=https%3A%2F%2Fmy.chsi.com.cn%2Farchive%2Fj_spring_cas_security_check")
    driver.find_element_by_id('username').send_keys('123')

    class_name方法定位 2
    driver.find_element_by_class_name('username').send_keys('123')
    #name属性定位   3
    driver.find_element_by_name('username').send_keys('123')
    #整个页面的第一个元素4
    driver.find_element_by_tag_name('input').send_keys(12222)

    xpath定位 5
    #xpath定位 //根路径下input/下方法
    driver.find_element_by_xpath('//input[@placeholder="请输入用户名"]').send_keys(122)

    css定位 6
    #3:通过属性来定位
    driver.find_element_by_css_selector("[autocomplete='off']").send_keys('seleniumw我要自学网') #属性要在[]里面
    通过link定位
    # 精准的标签定位  7
    driver.find_element_by_link_text('http://zhidao.baidu.com').click()
    # 模糊的标签定位 8
    driver.find_element_by_partial_link_text('http://zhidao.baidu.com').click()

    Css定位

    Selenium极力推荐使用CSS 定位,而不是XPath来定位元素,原因是CSS 定位比XPath 定速度快,语法也更加简洁。 

    CSS常用定位方法

    
    
    1. find_element_by_css_selector()
    2. #id id选择器根据id属性来定位元素
    3. .class  class选择器,根据class属性值来定位元素
    4. [attribute='value'] 根据属性来定位元素
    5. element>element 根据元素层级来定位 父元素>子元素
    具体代码如下:

    # #!/usr/bin/python3 # -*- coding: utf-8 -*- # @Time : 2020/7/24 15:32 # @Author : Gengwu # @FileName: By_css_seleclor.py # @Software: PyCharm from selenium import webdriver from time import sleep driver=webdriver.Chrome() #driver.get('https://www.baidu.com/') #1:通过id来定位 #driver.find_element_by_css_selector("#kw").send_keys("seleniumw我要自学网") #dlement后面不需要s,通过id来定位前面需要加#号+id #2:通过class来定位 #driver.find_element_by_css_selector('.s_ipt').send_keys('seleniumw我要自学网') #class来定位,class前面+. #3:通过属性来定位 #driver.find_element_by_css_selector("[autocomplete='off']").send_keys('seleniumw我要自学网') #属性要在[]里面 sleep(2) driver.find_element_by_id('su').click() sleep(2) driver.quit()


    #8种复数形式就是上面所有加上一个s,单数是一个元素,复数是一个列表

    8种复数

    #两底层 实际上底层也是调用id
    driver.find_element()
    driver.find_elements()

    开始实战第一步先右键检查看代码 

    driver.find_element_by_link_text('微信登录').click()
    driver.back()#回到当前页面
    driver.refresh()#刷新
    driver.forward()#前进
    driver.get_screenshot_as_file('截图.png')#截图

    element=driver.find_element_by_link_text('微信登录')
    data=element.get_attribute('innerText')#获取元素属性
    datas=element.get_attribute('href')#获取href 
    通过这个能定义到那个就能拿那个

    print(data) 会打印这个文字



  • 相关阅读:
    洛谷 P1593 因子和
    洛谷 P1167 刷题
    洛谷 P1613 跑路
    洛谷 P1629 邮递员送信
    洛谷 P1654 OSU!
    洛谷 P1967 货车运输
    FPGA开平方的实现
    FPGA设计思想之串并转换
    verilog乘法器的设计
    FPGA浮点数定点数的处理
  • 原文地址:https://www.cnblogs.com/weilemeizi/p/14481074.html
Copyright © 2011-2022 走看看