selenium通用配置

from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import functiondemo
import datetime
from selenium.webdriver import Keys
from selenium.webdriver.chrome.options import Options as Options1
from selenium.webdriver.firefox.options import Options as Options2
from time import sleep
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

chromeoptions = Options()
chromeoptions.add_experimental_option("debuggerAddress", "127.0.0.1:9222")
#
#mobile_emulation = {"deviceName": "iPhone 6"}

#options1 = Options1()
#options1.add_experimental_option("mobileEmulation", mobile_emulation)
#options1.add_experimental_option("excludeSwitches",["enable-automation"])
#options1.add_experimental_option("useAutomationExtension",'False')#设置手机模拟状态窗口大小
#options1.add_experimental_option("prefs",{"credentials_enable_service": False, "profile.password_manager_enabled": False})#禁止保存密码弹窗



# driver就是当前浏览器窗口
driver = webdriver.Chrome(options=chromeoptions)
# driver.binary_location=r'F:\sikuli\dianlan\chromedriver.exe'
# driver.get("http://192.168.1.")
functiondemo.FunctionSend_keys(driver,"//*[@id=\"kw\"]","qt1")
functiondemo.FunctionWebDriverWaitClick(driver,"//*[@id=\"su\"]")

import os

import datetime
from selenium import webdriver
from selenium.webdriver import Keys
from selenium.webdriver.chrome.options import Options as Options1
from selenium.webdriver.firefox.options import Options as Options2
from time import sleep
from selenium.webdriver.common.by import By
from selenium.webdriver.support.wait import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC


from openpyxl import Workbook
from openpyxl import load_workbook

#滚动视图到指定位置
def FunctionScrollIntoView(driverZ,xpath):
    target = driverZ.find_element(By.XPATH,xpath)  # 需要将滚动条拖动至的指定的元素对象定位
    driverZ.execute_script("arguments[0].scrollIntoView();", target)

#鼠标悬停于指定位置
def FunctionActionChains(driverZ,xpath):
    element = driverZ.find_element(By.XPATH, xpath)
    sleep(0.5)
    webdriver.ActionChains(driverZ).move_to_element(element).perform()
#点击
def FunctionClick(driverZ, xpath):
    driverZ.find_element(By.XPATH, xpath).click()
#鼠标悬停于指定位置并点击
def FunctionMove_to_element(driverZ, xpath):
    element = driverZ.find_element(By.XPATH,xpath)
    sleep(0.2)
    webdriver.ActionChains(driverZ).move_to_element(element).click(element).perform()  # 打开拓展
#按钮点击
def FunctionWebDriverWaitClick(driverZ, xpath):
    WebDriverWait(driverZ, 10).until(
        EC.element_to_be_clickable((By.XPATH, xpath))).click()
#输入
def FunctionSend_keys(driverZ, xpath,information):
    driverZ.find_element(By.XPATH, xpath).clear()
    driverZ.find_element(By.XPATH, xpath).send_keys(information)
    driverZ.find_element(By.XPATH, xpath).clear()
    driverZ.find_element(By.XPATH, xpath).send_keys(information)
#强制点击
def FunctionForceClick(driverZ,xpath):
    comfirmdel = driverZ.find_element(By.XPATH, xpath)
    driverZ.execute_script("arguments[0].click();", comfirmdel)
#筛选一级下拉框,点击指定选项
def FunctionElement1(driverZ,xpath1,xpath2):
    element1 = driverZ.find_elements(By.XPATH,
                                         xpath1)  # 筛选的数量
    element2 = driverZ.find_elements(By.XPATH,xpath2)#准备的容器
    for ele0 in element1:
        if ele0.is_displayed():
            WebDriverWait(ele0, 10)
            element2 = ele0
        element2.click()
#关闭当前窗口
def FunctionClose(driverZ):
    driverZ.close()
#模拟回车键
def FunctionEnter(driverZ,xpath):
    driverZ.find_element(By.XPATH, xpath).send_keys(Keys.ENTER)

# send_keys(Keys.BACK_SPACE) 删除键BackSpace
# send_keys(Keys.SPACE) 空格键Space
# send_keys(Keys.TAB) 制表键Tab
# send_keys(Keys.ESPACE) 回退键Esc
# send_keys(Keys.ENTER) 回车键Enter
# send_keys(Keys.CONTROL,‘a’) 全选Ctrl+A
# send_keys(Keys.CONTROL,‘c’) 复制CTRL+C
# send_keys(Keys.CONTROL,‘x’) 剪切CTRL+X
# send_keys(Keys.CONTROL,‘v’) 粘贴Ctrl+V
# send_keys(Keys.F1) 键盘F1
# send_keys(Keys.F12) 键盘F12


#获取组件文本
def FunctionText(driverZ,xpath):
    newtext=driverZ.find_element(By.XPATH, xpath).text
    return newtext

通用启动

if __name__ == "__main__":

try

try:
    functiondemo.FunctionClick(driver, "//span[text()=\"*\"]/../..")#正常运行代码
except Exception:
    functiondemo.FunctionClick(driver, "//span[text()=\"*\"]/../i")#报错后运行代码
    functiondemo.FunctionClick(driver,"//span[text()=\"*\"]/../..")
    print("*")
 temporaryspace1 = [["name" for i in range(0, 100)] for j in range(0, 4)]  # 最大容量为100项目,翻4倍
for i in range(44): 从0到43
  for i in range(0,43):从0到42
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值