selenium模組(三):三種選擇器(id、css、xpath)
阿新 • • 發佈:2018-12-05
三種查詢元素方式 :id、css、xpath
最常用xpath,css更靈活。
from selenium import webdriver from selenium.webdriver import ActionChains from selenium.webdriver.common.by import By #按照什麼方式查(By.ID,By.CSS_SELECTOR) from selenium.webdriver.common.keys import Keys #鍵盤按鍵操作 from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.support.wait import WebDriverWait #等待頁面載入某些元素 browser=webdriver.Chrome() browser.get('https://www.baidu.com') #以下三種方式達到的都是同一種效果:查詢id為kw的標籤 input_tag1=browser.find_element(By.ID,'kw') #等同於:input_tag1=browser.find_element_by_id('kw') input_tag2=browser.find_element(By.CSS_SELECTOR,'#kw') #等同於:input_tag2=browser.find_element_by_css_selector('#kw') input_tag3=browser.find_element(By.XPATH,'//*[@id="kw"]') #等同於:input_tag3=browser.find_element_by_xpath('//*[@id="kw"]') #注意:browser.find_elements系列與browser.find_element的區別就是,前者是查詢多個,後者是隻找第一個 #找到第一個div標籤 div1=browser.find_element(By.CSS_SELECTOR,'div') #找到所有的div標籤,放到列表裡 div2=browser.find_elements(By.CSS_SELECTOR,'div') browser.close()
tag_name等
from selenium import webdriver from selenium.webdriver import ActionChains from selenium.webdriver.common.by import By #按照什麼方式查詢,By.ID,By.CSS_SELECTOR from selenium.webdriver.common.keys import Keys #鍵盤按鍵操作 from selenium.webdriver.support import expected_conditions as EC from selenium.webdriver.support.wait import WebDriverWait #等待頁面載入某些元素 browser=webdriver.Chrome() browser.get('https://www.amazon.cn/') wait=WebDriverWait(browser,10) wait.until(EC.presence_of_element_located((By.ID,'cc-lm-tcgShowImgContainer'))) tag=browser.find_element(By.CSS_SELECTOR,'#cc-lm-tcgShowImgContainer img') #獲取標籤屬性, print(tag.get_attribute('src')) #獲取標籤ID,位置,名稱,大小(瞭解) print(tag.id) print(tag.location) print(tag.tag_name) print(tag.size) browser.close()