python使用selenium自动爬虫判断xpath节点是否存在
描述
selenium使用find_element_by_xpath方法寻找节点的时候找到会返回true,找不到则返回异常信息,也没有直接返回节点是否存在的方法,不过可以通过自定义方法来判断文件是否存在
思路
自定义方法,接收一个参数文件节点路径,如果存在就返回true,如果不存在就返回false
实现
#捕获异常
def NodeExists(xpath):
try:
driver.find_element_by_xpath(xpath)
return True
except:
return False
具体使用
if NodeExists("//*[@id="tsf"]/div[2]/div[1]/div[1]/div/div[2]/input"):
find_element_by_xpath("//*[@id="tsf"]/div[2]/div[1]/div[1]/div/div[2]/input").click()
else:
print("节点不存在")