Selenium 元素定位

1. 在定位表格里面的标签时,可以尝试定位方式:查找 第4个td标签,也就是第4列的元素,在这个元素下面的第一个a标签:

driver.find_element_by_xpath('//tr[@class="woocommerce-orders-table"]/td[5]/a[1]')

#获取table的行数

rowCount = len(driver.find_elements_by_xpath('//*[@id="list-table"]/tbody/tr'))

2. element click intercepted:

ele = driver.find_element_by_xpath ("//p[@class='comment-form-rating-btn']/button" )

webdriver.ActionChains ( driver ).move_to_element ( ele ).click ( ele ).perform ()

3. 有下拉列表时:

from selenium.webdriver.support.uiimport Select

province = driver.find_element_by_xpath ('//select[@id="billing_state"]' )

s = Select ( province )

s.select_by_index (2 )

4. 定位到元素但是无法点击

默认selenium的点击操作是点元素0,0点坐标,那么我们可以在元素x,y坐标上加5,点击偏移了5

ele = self.find_element(*loc)

ActionChains(driver).move_to_element(ele).move_by_offset(5,5).click().perform()

5. 定位text

driver.find_element_by_xpath('//button[text()="Add to cart"]')

6. 上传文件

标签是input类型,可以直接上传文件路径, send_keys即可

driver.find_element_by_xpath('//input[@id="file-input"]').send_keys(r'C:\Users\Administrator\Desktop\funpinpin_file\import_data\23_shopify.csv')

你可能感兴趣的:(Selenium 元素定位)