python-3.x - 使用 Select_by_value 函数传递字符串变量时出现 InvalidSelectorException
问题描述
我试图通过将一个值传递给一个字符串变量来选择它。但是得到 InvalidSelectorException:消息:无效选择器:指定了无效或非法的选择器。
def Assignments(url,assignto,count):
sta = Select(driver.find_element_by_id("bulk_status"))
sta.select_by_value('Assigned')
sta = Select(driver.find_element_by_id("bulk_assigned_individual"))
sta.select_by_value(str(assignto))
Assignments(UrlForIssues[1],str(teammate),1)
UrlForIssues - 它是一个列表或 Url 队友 - 字符串变量计数用于其他内容,可以忽略。
现在的问题是当我运行程序时它会抛出异常。
InvalidSelectorException: Message: invalid selector: An invalid or illegal selector was specified
当我将一些字符串传递给函数 select_by_value() 时。喜欢:
select_by_value('abc')
它工作正常,只有将其作为变量传递时才会出现错误。
可用的选项集。
<select name="bulk_assigned_individual"id="bulk_assigned_individual">
<option value="brand-validator-queue">1 - bvq</option>
<option value="atmakb">98 - Bharath</option>
<option value="bvarn">98 - varun </option>
<option value="archawla">98 - Aryan </option>
<option value="jhiman">98 - Himanshu </option>
</select>
我已将所有值存储在一个文件中,并在列表中读取它。
team = open("team.txt",'r')
teammates = team.readlines()
然后在 for 循环中为我们拥有的所有选项调用 Assignments()。
for teammate in teammates:
Assignments(UrlForIssues[1],str(teammate),1)
解决方案
尝试如下并确认。
由于您将其作为String
变量传递,因此以下语句将返回False
:
print(assignto == options.get_attribute("value"))
因此,在for
循环中检查该assignto
值是否在选项中value
,然后选择该选项:
def Assignments(url,assignto,count):
sta = Select(driver.find_element_by_id("bulk_status"))
sta.select_by_value('Assigned')
sta = Select(driver.find_element_by_id("bulk_assigned_individual")).options
for opt in options:
if assignto in options.get_attribute("value"):
opt.click()
break
推荐阅读
- python - 如何在 Python 中保存所有深度学习模型参数?
- python - 遍历 URL 列表并使用 Selenium 打开每个 url
- c# - 如何获得与任务管理器中相同的当前 CPU 时钟速度?
- python - Pandas 和 seaborn 在 x 轴上绘制了意想不到的时间框架
- python - Visual Studio Code Python 中的 Linting 阻碍了实时错误检测
- java - 如何使用 Java Spring Boot 中的 Sentry Logback 日志集成实现 SENTRY_TAGS 的环境变量插值?
- vue.js - 如何将Vuetify数据表Float列格式化为十进制和pt-br?
- kubernetes - 指标服务器在 Kubernetes 集群中不起作用
- php - 我如何订购这个关联数组 php?
- r - 在R中提取月份