微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

selenium八种元素定位方法和js定位

@H_502_3@
"""
selenium八种元素定位方法和js定位

find_element和find_elements的区别:  find_element是精准定位    find_elements返回一个列表,需要去遍历获取值

"""
from selenium import webdriver
import time

driver = webdriver.Chrome()
driver.get("https://www.baidu.com/")

# find_element和find_elements的区别:find_elements返回一个列表

# 1,id定位
# driver.find_element_by_id("kw").send_keys("一人之下")

# 2,name定位
# driver.find_element_by_name("wd").send_keys("一人之下")


# 3,class定位
# driver.find_element_by_class_name("s_ipt").send_keys("一人之下")

# 4,link定位-->精准定位
# driver.find_element_by_link_text("hao123").click()

# 5,partial_link定位-->模糊定位
# driver.find_element_by_partial_link_text("o123").click()

# 6,tag_name定位-->标签名定位
# tag_name = driver.find_elements_by_tag_name("input")    # 找到页面上所有标签名为input的标签,返回一个列表
# for i in tag_name:
#     if i.get_attribute("id") == "kw":			#get_attribute("id")获取属性为id的值
#         i.send_keys("一人之下")

# 7,css选择器
# driver.find_element_by_css_selector("#kw").send_keys("一人之下")                #通过id选择器定位,前面加#
# driver.find_element_by_css_selector(".s_ipt").send_keys("一人之下")             #通过class选择器定位,前面加.
# driver.find_element_by_css_selector("[id=kw]").send_keys("一人之下")
# driver.find_element_by_css_selector("[name=wd]").send_keys("一人之下")
# driver.find_element_by_css_selector("[class=s_ipt]").send_keys("一人之下")
# driver.find_element_by_css_selector("[id=kw][name=wd]").send_keys("一人之下")   #组合定位
# driver.find_element_by_css_selector("span>input").send_keys("一人之下")         #根据上级定位
# driver.find_element_by_css_selector("form>span>input").send_keys("一人之下")    #根据上上级定位

# 8,xpath定位     //2个斜杠表示相对路径  *表示任意标签
# driver.find_element_by_xpath('//*[@id="kw"]').send_keys("一人之下")
# driver.find_element_by_xpath('//*[@name="wd"]').send_keys("一人之下")
# driver.find_element_by_xpath('//*[@class="s_ipt"]').send_keys("一人之下")
# driver.find_element_by_xpath('//input[@id="kw"]').send_keys("一人之下")               #上级定位
# driver.find_element_by_xpath('//*[@id="kw" and @name="wd"]').send_keys("一人之下")    #组合定位
# driver.find_element_by_xpath('//*[@id="form"]/span[1]/input[1]').send_keys("一人之下")#上上级定位

# JavaScript定位-->js定位          通过execute_script()方法执行
js = "document.getElementById('kw').value='一人之下'"
driver.execute_script(js)

time.sleep(2)
driver.close()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐