【发布时间】:2018-05-19 12:31:15
【问题描述】:
我正在编写一个 Python 程序,它使用 Selenium 导航到高级搜索页面上的搜索框并将信息输入到搜索框中。本网站使用 Javascript,每次加载网站时,每个搜索框的 ID 和名称都会略有变化,但类名称保持一致。虽然类名经常被重用,所以我的目标是使用find_elements_by_class_name(classname),然后通过该列表建立索引。
例如,一个盒子有类名x-form-text x-form-field x-form-num-field x-form-empty-field,但我不能使用它,因为 selenium 认为它是一个复合类名并引发错误。如果我只使用它的一部分,例如x-form-text,它就找不到元素。我的希望是找到一种允许空格的方法,或者,如果无法做到这一点,找到一种方法来搜索类名包含一段没有空格的文本的所有元素,例如x-form-text。
任何帮助或想法将不胜感激!
编辑:
我试过这段代码:
quantminclass = 'x-form-text.x-form-field.x-form-num-field.x-form-empty-field'
quantmin = '25'
browser.find_elements_by_css_selector(quantminclass)[0].send_keys(quantmin)
但出现列表索引超出范围的错误,这意味着它找不到任何东西。我检查了元素,这绝对是它的类名,所以我不确定如何继续。
【问题讨论】: