1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > python selenium定位元素方法_[原创] python selenium 元素定位方法封装

python selenium定位元素方法_[原创] python selenium 元素定位方法封装

时间:2021-06-13 23:38:04

相关推荐

python selenium定位元素方法_[原创] python selenium 元素定位方法封装

该楼层疑似违规已被系统折叠隐藏此楼查看此楼

写好了公用的调用类,接下来就按照pageobject的设计模式写一下基本的元素定位方法,此处我们需要对python的方法传参有所了解,没有自信的同学可以返回前面章节重新学习。先上代码吧:

--------------------------------------------------------------------------------------------------------------

#the file is base_page.py

#author=abao

# 定位元素方法

def find_element(self,type,position):

if type == 'xpath':

element=self.driver.find_element_by_xpath(position)

#element_exist(element)

return element

elif type == 'id':

element = self.driver.find_element_by_id(position)

#element_exist( element )

return element

elif type =='name':

element = self.driver.find_element_by_name(position)

#element_exist( element )

return element

elif type == 'link_text':

element = self.driver.find_element_by_link_text(position)

#element_exist( element )

return element

else:

print("不支持的类型")

'''

try:

# 确保元素是可见的。

# 注意:以下入参为元组的元素,需要加*。Python存在这种特性,就是将入参放在元组里。

WebDriverWait(self.driver,10).until(lambda driver: element.is_displayed())

# 注意:以下入参本身是元组,不需要加*

#WebDriverWait( self.driver, 10 ).until( EC.visibility_of_element_located( loc ) )

return element

except:

print("元素没有出现,等待超时")

'''

# 定位元素方法

def find_elements(self,type,position):

if type == 'xpath':

element=self.driver.find_elements_by_xpath(position)

#element_exist(element)

return element

elif type == 'id':

element = self.driver.find_elements_by_id(position)

#element_exist( element )

return element

elif type =='name':

element = self.driver.find_elements_by_name(position)

#element_exist( element )

return element

elif type == 'link_text':

element = self.driver.find_elements_by_link_text(position)

#element_exist( element )

return element

else:

print("不支持的类型")

------------------------------------------------------------------------------------------------------

更多代码查看 /view/a070922826d3240c844769eae009581b6bd9bd02?fr=NAShare(百度阅读)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。