【发布时间】:2017-01-04 22:59:46
【问题描述】:
使用 python + Selenium Web Driver,我正在尝试自动选择保险网站的某些单选按钮。问题是单选按钮的 ID 是动态的。例如,当生成一个新的保险申请时,会生成一个新页面,并且屏幕上的单选按钮具有动态创建的 ID(参见下面的 HTML 示例)
<div class="data">
<input type="radio" id="subj_received_33965" name="subj_status[33965]" value="received" class="radio form-element-left-radio"><label for="subj_received_33965" class="label-right">Received</label>
<input type="radio" id="subj_waived_33965" name="subj_status[33965]" value="waived" class="radio form-element-left-radio multi-radio-line-spacer" checked=""><label for="subj_waived_33965" class="label-right">Waived</label>
<input type="radio" id="subj_open_33965" name="subj_status[33965]" value="open" class="radio form-element-left-radio multi-radio-line-spacer"><label for="subj_open_33965" class="label-right">Open</label>
</div>
因此,使用上面的示例,我想单击 ID 为“subj_received_33965”的单选按钮。但是,由于元素是动态生成的,所以下一次自动化运行时 id 会有所不同(脚本会失败)。
我应该怎么做才能让脚本始终单击此页面上以“subj_received_”开头的元素,或者只选择值为“received”的元素?
谢谢
【问题讨论】: