一表单/框架操作
driver.switch_to.default_content() 退出到最外层
driver.switch_to.parent_frame() 退出到父层
from selenium import webdriver
# 导入os库,用于获取文件路径
import os
import time
# 创建浏览器
driver = webdriver.Chrome()
# 获取网页访问路径,os.path.abspath(文件名)获取文件的绝对路径
file_path = 'file:///'+os.path.abspath('example_frame.html')
print(file_path)
# #访问本地文件
driver.get(file_path)
time.sleep(5)
# #切换到第一个表单中 外面
driver.switch_to.frame('itcast_frame1')
# # 切换到第二层表单 里面
driver.switch_to.frame('itcast_frame2')
# # 定位到输入框
el = driver.find_element_by_id('sb_form_q')
# #输入
# el.send_keys('selenium')
# # 定位点击按钮
el_sub = driver.find_element_by_id('sb_form_go')
el_sub.click()
#
# # 定位一个元素,验证已经到达深层表单
el_search = driver.find_element_by_id('sb_form')
# print('依然在最深层表单中')
#
# #跳回到最外层的页面 driver.switch_to.parent_frame 跳回到上层页面
driver.switch_to.default_content()
# #验证已跳回到最外层
try:
el_search = driver.find_element_by_id('sb_form')
except:
print('已经从表单中退出')
二鼠标键盘操作
鼠标:ActionChains
from selenium import webdriver
from selenium.webdriver import ActionChains
driver=webdriver.Chrome()
url='http://baidu.com'
driver.get(url)
#定位到logo
# e1_logo=driver.find_elements_by_css_selector('#lg > map > area')
e