目前使用Python和Splinter,我需要准确定义在页面上找到选项时要点击的文本option1
:
from splinter import Browser
browser = Browser('chrome')
browser.find_option_by_text(option1).first.click()
但是如果option1
不在那里,我怎么能退回并选择任何可用的下一个选项而不必定义它?
是否可以在页面上找到一个选项并选择遇到的任何第一个可用选项,而无需定义选项?
提前感谢您,一定会提前/接受回答
答案 0 :(得分:3)
您可以在页面中获得所有选项。因此,如果第一次搜索option1
为空,您可以继续使用下一个可用选项。
selected_option = browser.find_option_by_text(option1) or browser.find_by_tag('option')
selected_option = selected_option.first if selected_option else None
第二行中的内联if
就在那里,因为如果该页面中根本没有选项,find_by_tag
也可以返回一个空列表。
find_by_tag
方法是对这两个问题的回答,因为您可以将其用作后备或一次性收集所有选项。