Selenium_Xpath定位和iframe切换
课堂内容:
逻辑运算 and or
xpath函数
#匹配value属性包含“一下”的input标签
#//input[contains(@value,'一下')]
#匹配文本内容包含“抗击”的a标签
#//a[contains(text(),'抗击')]
#匹配title属性包含“易购”的a标签
#//a[contains(@title,'易购')]
CSS定位: 01:08:21开始讲解到01:34:35
作业:
import time
from selenium import webdriver
browser = webdriver.Chrome()
browser.get(url="https://i.qq.com/")
#定位到iframe的定位框
browser.switch_to.frame('login_frame')
browser.find_element_by_xpath('//a[@id="switcher_plogin"]').click()
#定位到登陆框
browser.find_element_by_id('u').send_keys('809136342@qq.com')
browser.find_element_by_id('p').send_keys('345a_dewqq')
browser.find_element_by_id('login_button').click()
#定位到验证码的iframe
tcaptcha = browser.find_element_by_id("tcaptcha_iframe")
browser.switch_to.frame(tcaptcha)
# frame = browser.find_element_by_xpath('//iframe[@id="tcaptcha_iframe"]') #通过节点进行切换
# browser.switch_to.frame(frame)
browser.find_element_by_id('tcaptcha_drag_thumb').click()
browser.implicitly_wait(30)
time.sleep(5)
browser.quit()