python+selenium下拉列表option对象操作方法二
options = driver.find_elements_by_tag_name('option') #获取所有的option子元素
options[2].click() #获取第三个元素
for i in range(len(options)): #选择value值为python的子项
if options[i].get_attribute('value') == 'python':
options[i].click()
break
for i in range(len(options)): #选择text值为python的子项
if options[i].text == 'python':
options[i].click()
break
for i in range(len(options)):
if options[i].get_attribute('selected'):
print options[i].get_attribute('text') #返回当前被选子项的text内容
print options[i].get_attribute('value') #返回当前被选子项的value内容
break
===========================================================================================
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
from time import sleep
driver = webdriver.Firefox()
driver.get('http://www.baidu.com')
#--------------------------------------------------------------------------------------
link = driver.find_element_by_link_text("设置")
ActionChains(driver).move_to_element(link).perform() #鼠标悬停在上面
sleep(2)
driver.find_element_by_class_name("setpref").click() # 打开搜索设置
sleep(2)
#--------------------------------------------------------------------------------------------------
options = driver.find_elements_by_xpath('//*[@id="nr"]/option')
options[1].click() #第二个子项被选中
sleep(2)
options[2].click() #第三个子项被选中
sleep(2)
options[0].click() #第一个子项被选中
sleep(2)
#-----------------------------------------------------------------------
print(options[0].text)
print(options[1].text)
print(options[2].text)
#----------------------------------------------------------------------------
print('----------------------001')
for i in range(len(options)): #选择value值为python的子项
if options[i].get_attribute('value') == '20' :
options[i].click()
print(options[i].text)
break
#----------------------------------------------------------------------------
driver.quit()
执行结果:
每页显示10条
每页显示20条
每页显示50条
----------------------001
每页显示20条