find_element(s)_by_id()——按id查找
find_element(s)_by_name()——按name值查找
find_element(s)_by_class_name()——按类名查找
find_element(s)_by_tag_name()——按标签名查找
find_element(s)_by_link_text()——此种方法是专门用来定位文本链接的,比如百度首页右上角有“新闻”,“hao123”,“地图”等链接。如:
# 通过link定位"新闻"这个链接并点击 driver.find_element_by_link_text('新闻').click()
find_element(s)_by_partial_link_text()——按部分文本链接名称查找
有时候一个超链接的文本很长很长,我们如果全部输入,既麻烦,又显得代码很不美观,这时候我们就可以只截取一部分字符串,用这种方法模糊匹配了。
find_element(s)_by_xpath()——按xpath方式查找
find_element(s)_by_css_selector()——按css选择器查找
注意:
(1)以上加(s)表示find_element_by_xxx()表示获取查找到第一个节点;find_elements_by_xxx()表示查找多个节点,查找结果放在一个数组中
(2)查找单个和多个节点都有简写方式:find_element(查找方式,查找的值),find_element(查找方式,查找的值)
示例:
from selenium import webdriver
from selenium.webdriver.common.by import By
bro=webdriver.Chrome()
bro.get("https://www.taobao.com")
input_first=bro.find_element(By.ID,"q")
input_first.send_keys("selenium")
bro.close()