1.我们来以https://www.17sucai.com/pins/demo-show?id=5926这个网站进行练习下拉框
- iframe 是html标签,作用是文档中的文档
- 如果有iframe标签,我们就需要切换到这个标签
1.我们需要导入一个模块
from selenium.webdriver.support.ui import Select
2.其次它有个iframe标签,所以我们现需要转换
driver.switch_to_frame(driver.find_element_by_id('iframe'))
- 以下是全部代码
from selenium import webdriver
from selenium.webdriver.support.ui import Select
import time
driver = webdriver.Chrome()
driver.get('https://www.17sucai.com/pins/demo-show?id=5926')
# switch_to_frame来转换标签
driver.switch_to_frame(driver.find_element_by_id('iframe'))
# 来定位选择标签
select_tag = Select(driver.find_element_by_class_name('nojs'))
#来进行选择内容
select_tag.select_by_value('JP')
- 1.根据值来进行选择
select_tag.select_by_value('JP')
- 2.根据索引来选择
- 定义第三个元素
select_tag.select_by_index(2)
- 最后,我们就成功的选择了
3.像第二个下拉框不是select形式,所以我们就不可以用Select来进行定位标签
- 因为这个标签不在a底下,在下一个标签底下,我们就可以直接定位进行点击 driver.find_element_by_xpath(’//*[@id=“dk_container_country-nofake”]/div/ul/li[3]/a’).click()
select_tag = driver.find_element_by_id('dk_container_country-nofake')
select_tag.click()
time.sleep(1)
driver.find_element_by_xpath('//*[@id="dk_container_country-nofake"]/div/ul/li[3]/a').click()