python - 如果输入文本框包含部分单词,则填写输入文本框
问题描述
我最近在玩 Selenium,我知道很多基础知识,我想知道是否有办法做到这一点:
如果输入文本字段包含(部分)单词:“用户”,则:
self.driver.find_element_by_xpath("//input[contains('user')]").send_keys("username")
所以本质上,如果输入文本标签包含工作“用户”,则假定它是用户名字段,同样适用于“密码”和“电子邮件”
我不确定这是否可能,从谷歌搜索我看不到任何突出的东西,任何帮助将不胜感激。
解决方案
这是填充字段的非常糟糕的方法。您不知道哪个字段会接受什么值。让我们取两个字段有“用户”:
<input name='userPassword'/>
<input name'userName'/>
在这种情况下,我们将有 2 个匹配项,并且很难调试或理解到底发生了什么。
只需遵循常规方法并使用 w3c 策略定义定位器:
https://www.w3.org/TR/webdriver1/#locator-strategies
ps 如果您想与这种解决方案作斗争。
推荐阅读
- regex - 从 Apache NiFi 中的 unix 时间戳中删除点的问题
- .net-core - 在开发者帐户中创建 Google 日历活动
- ios - 如何使用深层链接我想使用消息应用程序打开我的应用程序?
- c++ - 如何将 AST 用于自定义前端操作和 clang 静态分析
- cuda - 基本 cuda 共享内存
- file-upload - 如何在vue js中使用Filepond并使用axios上传文件?
- spring - 适合所有人的 Oauth2 + Spring Boot 资源
- python - 在python中将原始数据类型名称作为函数参数传递
- mysql - 如果您正在更新密钥,如何将 INSERT INTO ON DUPLICATE KEY UPDATE 转换为多个查询
- swift - 以编程方式将 NSTableView 绑定到 NSArrayController