元素定位

1. 基础定位

1.1首先新建一个py文件,然后把下面的代码写上,运行后,会自动打开浏览器,访问百度。

from selenium import webdriver
import time

browser=webdriver.Chrome()

browser.get('file:///D:/p9-%E9%A1%B9%E7%9B%AE/day02/pagetest/pagetest/%E6%B3%A8%E5%86%8CA.html')

time.sleep(5)

  1.1.1  如下图所示:

元素定位

 1.2 通过id来定位元素信息,然后输入一个值。打开页面后会自动输入你代码中的值。

 browser.find_element_by_id('passwordA').send_keys('123456')

 1.3 通过name属性查找手机号,然后输入一个值,页面打开后会自动输入代码中的值。

browser.find_element_by_name('telA').send_keys('18611112222)

 1.4 根据你想查找的超链接的名字,进入页面,点击会跳转到你所点击的那个页面。

browser.find_element_by_link_text('新浪').click()

1.5 根据你想查找的超链接的名字进行模糊查找,不用全部输入,输主要的进入页面,点击会跳转到你所点击的那个页面。

browser.find_element_by_partial_link_text('网站').click()

2. Xpath定位

2.1 相对定位查找密码位置,输入一个值从跟目录开始查找。自动打开页面,会显示输入的值。

browser.find_element_by_xpath('//form/p[2]/input').send_keys('123456')

2.2 绝对定位查找用户名位置,输入一个值进行查找。自动打开页面,会显示输入的值。

browser.find_element_by_xpath('/html/body/div/fieldset/form/p[1]/input').send_keys('ztt')

3 css定位

3.1 id选择器,根据id属性对密码进行查找,然后输入一个值,进入页面,会自动显示输入的值。 #passwordA: # + 查找的名称

browser.find_element_by_css_selector('#passwordA').send_keys('ztt123456')

3.2 class选择器,根据class属性对手机号进行查找,然后输入一个值,进入页面,会自动显示输入的值。.telA: . + 查找的名称

browser.find_element_by_css_selector('.telA').send_keys('18633621859')

3.3 元素选择器 ,根据input标签来查找,输入一个值,运行,会自动帮你打开页面,然后还会显示输入的值。因为input标签有很多,所以默认查找第一个。

# browser.find_element_by_css_selector('input').send_keys('admin')

4. 属性选择器

4.1 单属性 ,根据name属性=’emailA‘进行查找,输入一个值,会自动运行。

 browser.find_element_by_css_selector("[name='emailA']").send_keys('123456@qq.com')

4.2 多属性。 根据name属性=’emailA‘,并且 class属性=’email  dzyxA‘   进行查找,输入一个值,会自动运行。

browser.find_element_by_css_selector("[name='emailA'],[class='emailA dzyxA']").send_keys('123456@qq.com')

5. 层级选择器

5.1 父子层级选择器

browser.find_element_by_css_selector('#pa>#userA').send_keys('admin')

5.2 隔代层级关系选择器

browser.find_element_by_css_selector('.zc #userA').send_keys('admin')

 

 

 

 

上一篇:使用ssh密钥实现免密登陆Linux服务器


下一篇:布局优化: 标签的使用