|
原文链接:https://testerhome.com/topics/7091
方法一:
def isElement(self,identifyBy,c):
'''
Determine whether elements exist
Usage:
isElement(By.XPATH,"//a")
'''
sleep(1)
flag=None
try:
if identifyBy == "id":
#self.driver.implicitly_wait(60)
self.driver.find_element_by_id(c)
elif identifyBy == "xpath":
#self.driver.implicitly_wait(60)
self.driver.find_element_by_xpath(c)
elif identifyBy == "class":
self.driver.find_element_by_class_name(c)
elif identifyBy == "link text":
self.driver.find_element_by_link_text(c)
elif identifyBy == "partial link text":
self.driver.find_element_by_partial_link_text(c)
elif identifyBy == "name":
self.driver.find_element_by_name(c)
elif identifyBy == "tag name":
self.driver.find_element_by_tag_name(c)
elif identifyBy == "css selector":
self.driver.find_element_by_css_selector(c)
flag = True
except NoSuchElementException,e:
flag = False
finally:
return flag
判断是否有更新弹窗 示例:
while True:
update = self.isElement(By.CSS_SELECTOR, "body > div.update-app-modal.small > div > div.update-btn-box > div.small-version")
if update:
print ("have update")
self.driver.find_element_by_css_selector("body > div.update-app-modal.small > div > div.update-btn-box > div.small-version").click()
else:
break
方法二:
简单粗暴版:
def findItem(self,el):
source = self.driver.page_source
if el in source:
return True
else:
return False
|