(四)、Python自动化测试--Selenium八种元素定位

import selenium.webdriver as web
driver = web.Chrome()

driver.get('https://www.baidu.com/')

#八种元素的定位方法:id、name、class_name、tag_name、link_text、partial_link_text、xpath、css

#1\通过id定位:find_element_by 找-元素-通过
# input = driver.find_element_by_id('kw')
#输入文字到输入框:send_keys
# input.send_keys('selenium')

#2\通过class定位
# input = driver.find_element_by_class_name('s_ipt').send_keys('python')

#3\xpath 找百度一下按钮:
# btn = driver.find_element_by_xpath('//*[@id="su"]')

#点击按钮
# btn.click()

#4\ 通过name进行定位:
# input = driver.find_element_by_name('wd').send_keys('李彦宏')

#5\ 通过link进行定位:
# news = driver.find_element_by_link_text('地图')
#点击
# news.click()

#6\partial  模糊定位
# feiyan = driver.find_element_by_partial_link_text('肺炎')#放回第一个
# feiyan.click()

#7、tag_name进行定位:
# input = driver.find_element_by_tag_name('input')
# input.send_keys('selenium')

#8、css_selector
# a = driver.find_element_by_css_selector('#head > div > div.s_form > div')
# a.find_element_by_id('kw').send_keys('python')
# a.find_element_by_id('su').click()

# xpath
#缺点:
#1、依赖于结构。
#2、不利于代码的维护。
#3、后期维护成本很高。


#一组元素定位:find_elements_by_

b = driver.find_elements_by_tag_name('input')
for n in b:
    #获取属性get_attribute
    if n.get_attribute('autocomplete') == 'off':
        n.send_keys('python')
    print(n)

c = driver.find_elements_by_partial_link_text('百度')
发布了138 篇原创文章 · 获赞 21 · 访问量 22万+

猜你喜欢

转载自blog.csdn.net/grl18840839630/article/details/104735470