selemium的安装
模块的引用
import time
import os
from selenium import webdriver
# 先安装pywin32,才能导入下面两个包
import win32api
import win32con
# 导入处理alert所需要的包
from selenium.common.exceptions import NoAlertPresentException
from selenium.webdriver.common.keys import Keys
import traceback
环境配置
chromedriver = r"C:\Users\长夜难明\AppData\Local\Google\Chrome\Application"
os.environ["webdriver.ie.driver"] = chromedriver
打开网站
driver = webdriver.Chrome() # 选择Chrome浏览器
driver.get('http://xxxxxx') # 打开网站
点击click
driver.find_element_by_xpath('//*[@id="app"]/div/div[2]/div[1]/form/div[1]/div/div/input').click() #
清空clear
driver.find_element_by_xpath('//*[@id="app"]/div/div[2]/div[1]/form/div[1]/div/div/input').clear() #
输入input
driver.find_element_by_xpath('//*[@id="app"]/div/div[2]/div[1]/form/div[1]/div/div/input').send_keys(
username)
如有嵌入iframe,需要转换
driver.switch_to.frame(driver.find_elements_by_tag_name('iframe')[0])
清除chrome缓存
driver = webdriver.Chrome() # 选择Chrome浏览器
# 设置隐式等待
driver.implicitly_wait(10)
# 清除缓存提示框
driver.get('chrome://settings/clearBrowserData')
# 2S 等待时间
time.sleep(1)
clearButton = driver.execute_script(
"return document.querySelector('settings-ui').shadowRoot.querySelector('settings-main').shadowRoot.querySelector('settings-basic-page').shadowRoot.querySelector('settings-section > settings-privacy-page').shadowRoot.querySelector('settings-clear-browsing-data-dialog').shadowRoot.querySelector('#clearBrowsingDataDialog').querySelector('#clearBrowsingDataConfirm')")
clearButton.click()
鼠标悬停
from selenium.webdriver.common.action_chains import ActionChains
# 定位收藏栏
pattern = driver.find_element_by_xpath('/html/body/div[4]/div[2]/div/div/div[2]/div/form/div[4]/div/div/div[2]/ul[2]/li[3]')
# 悬停至收藏标签处
ActionChains(driver).move_to_element(pattern).perform()
鼠标滑动
需要滚动内嵌的表单下面,选择2016
target = driver.find_element_by_xpath('/html/body/div[4]/div[2]/div/div/div[2]/div/form/div[4]/div/div/div[2]/ul[2]/li[7]')
driver.execute_script("arguments[0].scrollIntoView();",target )