import sys
import time
import os
import traceback
from os import path
import openpyxl
from openpyxl.styles import Side,Alignment,Border
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.action_chains import ActionChains
#浏览器设置
chrome_options = webdriver.ChromeOptions()
driver = webdriver.Chrome(options=chrome_options)
#窗口最大化
driver.maximize_window()
#进入页面
driver.get('http://www.baidu.com/')
#显示等待,最多等待10s并输入参数
WebDriverWait(driver,10).until(EC.presence_of_element_located((By.ID,'kw'))).send_keys('电视')
#点击搜索
WebDriverWait(driver,10).until(EC.presence_of_element_located((By.ID,'su'))).click()
#退出浏览器
driver.quit()
获取所有句柄
handles=driver.window_handles
获取当前窗口句柄
Handles_bestnew=driver.current_window_handle
切换句柄
#通过获取全部句柄切换到指定句柄
handles=driver.window_handles
dirver.swtich_to.window(handles[1])
切换iframe
#先定位iframe
df=WebDriverWait(driver,10).until(EC.presence_of_element_located((By.XPATH,'/html/body/div[4]/div/div/iframe')))
# 进入指定页面
driver.switch_to.frame(df)
#直接定位iframe
#driver.switch_to.frame('iframe的ID')
#进入父级frame
driver.switch_to.parent_frame()
# 回到上一次的frame
driver.switch_to_default_content()
清除文本框的内容
WebDriverWait(driver, 10).until(EC.presence_of_element_located((By.ID, 've'))).clear()
查找多个元素
f4_list= WebDriverWait(driver, 10).until(EC.presence_of_all_elements_located((By.CLASS_NAME, "f4")))#返回一个列表,可通过索引直接获取数据