我正在尝试使用Python中的Selenium在Outlook上自动执行电子邮件创建过程,并且某些输入ID的替代项(例如,名字的替代项)在“ TextField64”和“ TextField65”之间进行替代。我似乎无法获取如何检查“ TextField64”的代码的方法,如果不存在,请检查“ TextField65”的代码
我尝试使用find_element_by_css_name,find_element_by_css_selector,但是它们都交替使用,我发现使用find_element_by_id更容易。
if len (driver.find_element_by_id('TextField64'))==0:
First = driver.find_element_by_id('TextField65')
elif len (driver.find_element_by_id('TextField65'))==0:
First = driver.find_element_by_id('TextField64')
我在运行第一行而不检查else行时得到了这个。 “第81行,在 如果len(driver.find_element_by_id('TextField64'))== 0:“
应该检查else行并相应地设置“ First”变量。
答案 0 :(得分:0)
WebElement
没有len()
。
要检查长度计数0,您需要使用driver.find_elements_by_id()
尝试以下代码。
if len(driver.find_elements_by_id('TextField64'))==0:
First = driver.find_element_by_id('TextField65')
elif len(driver.find_elements_by_id('TextField65'))==0:
First = driver.find_element_by_id('TextField64')
答案 1 :(得分:-1)
只需使用CSS选择器和OR运算符即可。
First = driver.find_element_by_css_selector("TextField64,TextField65")