selenium处理iframe
如果定位的标签在iframe中,必须使用swith_to.frame(id)
动作链: from selenium.webdriver import ActionChains
实例会动作链
执行相关动作
释放动作链
from selenium import webdriver
from time imprt sleep
bro=webdriver.Chrome(executable_path='./chromedriver')
bro.get('https:// ?')
bro.find_element_by_id('draggable')#在iframe中是定位不到的
如果定位的标签存在于iframe标签之中的则必须通过如下操作再进行标签定位
bro.switch_to.frame('iframeResult')#切换浏览器作用域
bro.find_element_by_id('draggable')
用到动作链
from selenium.webdriver import ActionChains
action=ActionChains(bro)
action.click_and_hold(div)#点击长按
for i in rang(5)
action.move_by_offset(17,0).perform() #perform()让动作立即执行
action.release()释放动作链
bro.quit()
简单案例登录QQ
bro.get("https://qzone.qq.com/')
bro.switch_to.frame('login_from')
a_tag=bro.find_element_by_id('switch_plogin')
a_tag.click()
username_tag=bro.find_elemetn_by_id('u')
username_tag.send_keys()
btn=bro.find_element_by_id('login_button")
btn.click()
网友评论