xpath 或运算
model_node_list = self.driver.find_elements_by_xpath(
'//[@id="cc"]/div[6]/div[1]/ul/li/a[1]|//[@id="cc"]/div[6]/div[2]/ul/li/a[1]')
获取父节点
t=node.find_element_by_xpath('..')
模拟hover事件
from selenium import webdriver
from selenium.webdriver import ActionChains
from mysqlHelper import MysqlHepler
class Proccessor:
def __init__(self):
self.driver = webdriver.Chrome("C:\\software\\chromedriver_win32\\chromedriver.exe")
self.cnt = True
pass
def start(self):
self.driver.maximize_window()
self.driver.get("http://www.mtmchina.cn")
node = self.driver.find_element('//*[@id="brands"]')
model_hover = ActionChains(self.driver).move_to_element(node)
model_hover.perform()
proccessor = Proccessor()
proccessor.start()
根据css属性选择节点
model_node_list = self.driver.find_elements_by_xpath('//*[@id="productfinder"]/ul/li[contains(@style,"display: block")]')
获取某一个元素下面的子元素
self.driver.maximize_window()
self.driver.get("http://www.mtmchina.cn")
li_node_list = self.driver.find_elements_by_xpath('//*[@id="productfinder"]/ul[2]/li')
link_num = 1
for li in li_node_list:
#获取当前元素下面的a元素
a = li.find_element_by_css_selector('a')
href = a.get_attribute('href')
if href == "http://www.mtmchina.cn/#":
continue
self.url_list.append(href)
print(li.text, href)
link_num += 1
print("总连接", link_num)
获取节点的class
cl = li.get_attribute("class")
设置节点Id
self.driver.execute_script('arguments[0].setAttribute("id","nurmemet_img_id");', img)
sel_items = self.driver.find_elements_by_xpath(
'//*[@id="content_container"]/div[1]/a[contains(@class, "slider_image_selected")]')
info_side=self.driver.find_element_by_class_name("information-side")
#information-side 下面的节点h1
h1=info_side.find_element_by_css_selector("h1")
# information-side下面的节点h2
h2=info_side.find_element_by_css_selector("h2")
#information-side 下面的节点clearfix
clearfix=info_side.find_element_by_css_selector(".clearfix");
#information-side 下面的节点product-feautured-specification
ul=info_side.find_element_by_css_selector(".product-feautured-specification");
等待元素的出现
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
wait = WebDriverWait(self.driver, 40)
element = wait.until(EC.element_to_be_clickable((By.CLASS_NAME, 'information-side')))
时间: 2024-10-29 20:46:29