在selenium和python中获取类的值
这会打印出大量的在selenium和python中获取类的值,python,selenium,selenium-webdriver,Python,Selenium,Selenium Webdriver,这会打印出大量的None 我没有得到它,因为我访问了它的类,提取了值,但它返回None 如果可能的话,我希望避免这样做: medicationstextbox_locator = "//*[@class='medMedications text-field ']" medicationstextbox_locatorTextBox = driver.find_elements_by_xpath(medicationstextbox_locator) for i in medicationste
None
我没有得到它,因为我访问了它的类,提取了值,但它返回None
如果可能的话,我希望避免这样做:
medicationstextbox_locator = "//*[@class='medMedications text-field ']"
medicationstextbox_locatorTextBox = driver.find_elements_by_xpath(medicationstextbox_locator)
for i in medicationstextbox_locatorTextBox:
print(i.get_attribute("values"))
因为我必须定义每个文本框,而文本框的数量事先是未知的。这样做也需要很多时间。那么,我们如何解决这个问题呢
打印(i.get_属性(“值”))
没有值
属性,因此您得到的是None
s。有值
属性
除此之外,您的第一种方法完全是有意义的,应该是有效的
我们可以通过find\u elements\u by\u CSS\u selector()
使用“CSS选择器”使其更简单一些:
或者,您可以检查id
属性是否包含药物
:
medications = driver.find_elements_by_css_selector("input.medMedications")
# count
print len(medications)
# values
for medication in medications:
print medication.get_attribute("value")
或者,对于XPath:
medications = driver.find_elements_by_css_selector("input[id*=Medications]")
这就是我错过的?一个“s”?哈哈哈哈。谢谢你,成功了。我不敢相信我已经因为一个“s”笑了好几个小时了,谢谢you@HalcyonAbrahamRamirez这是常有的事。大多数情况下,一个人会在提问时解决问题(“把你的问题告诉橡皮鸭”案例)
medications = driver.find_elements_by_css_selector("input.medMedications")
# count
print len(medications)
# values
for medication in medications:
print medication.get_attribute("value")
medications = driver.find_elements_by_css_selector("input[id*=Medications]")
medications = driver.find_elements_by_xpath("//input[contains(@id, 'Medications']")