python - Python,selenium chrome 驱动程序填充表单(元素 id 的变化)
问题描述
公司内部网页的一部分如下所示:
这是网页的第一种形式。我想在这个表格中输入数字。
问题是,刷新网页时元素 id 会发生变化。所以我厌倦了 driver.find_element_by_xpath 和 driver.find_element_by_css_selector,它不是每次都捕捉到表格。
所以我想也许找到文本行“客户编号”,然后移动到它的下一个元素,可能是一个选择。但同样,“学生号”的元素id。也在发生变化。
有没有办法通过文本“学生号”来捕捉表格?还是有更好的选择?谢谢你。
部分 HTML 代码如下:
<div class="labeledField">
<div class="fieldLabel beanRequiredField">Student No.</div>
<div class="field"><span id="id16">
<div>
<input type="text" class="inputField" value="" name="tabs:r:0:c:0:c:field:c:p:r:0:c:0:c:field:c:frag:component" id="id4e" customid="StudentId" autocomplete="off">
</div>
</span></div>
</div>
解决方案
也许这会解决你的问题:
WebDriverWait 等待 = 新的 WebDriverWait(驱动程序, 15); wait.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//input[@id='text3']")));
推荐阅读
- javascript - 滚动锁定在移动设备上
- python - 取决于 Pandas Dataframe 列的值数组
- angular - 无法绑定到“dividerColor”,因为它不是“mat-form-field”的已知属性
- c++ - 在 unordered_map 的键上实现“你的意思是”
- reactjs - Ant-Design React-Native 搜索栏取消按钮在按下时无法隐藏
- node.js - 如何解决“TypeError: Cannot read property 'recordset' of undefined”的问题?
- python - 如何使用 jupyter notebook 在桌面上读取文件?
- php - PHP Imagick ReadImage WriteImage 质量不同
- javascript - 在 vuejs 中过滤 const 数据
- ag-grid - 显示转置网格