首页 > 编程语言 >记录selenium,python自动化测试中的chromedriver.exe地址和打开后自动关闭浏览器问题

记录selenium,python自动化测试中的chromedriver.exe地址和打开后自动关闭浏览器问题

时间:2023-04-17 11:57:32浏览次数:39  
标签:el exe python selenium item btn find browser

selenium的官方地址为:https://selenium-python.readthedocs.io/index.html

镜像地址:https://npmmirror.com/

# 导入 webdriver
from selenium import webdriver
from selenium.webdriver.common.by import By
# 调用键盘按键操作时需要引入的Keys包
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
import time

# url地址
url = 'http://xxxx:9000/login'
# 定义chrome驱动去地址
path = Service('chromedriver.exe')
# 设置属性
options = Options()
# 设置不自动关闭浏览器
options.add_experimental_option('detach', True)
# 创建浏览器操作对象
browser = webdriver.Chrome(service=path, options=options)
# 最大化窗口
browser.maximize_window()
browser.get(url)

user = browser.find_elements(By.CLASS_NAME, 'el-input__inner')[1]
pwd = browser.find_elements(By.CLASS_NAME, 'el-input__inner')[2]
user.send_keys("XXXXXXX")
pwd.send_keys("XXXXXXXX")
login_btn = browser.find_element(By.CLASS_NAME, "el-button--primary")
login_btn.click()
time.sleep(5)
ehr_btn = browser.find_elements(By.CSS_SELECTOR, ".el-menu--horizontal li")
ehr_btn[1].click()
time.sleep(1)
sub_btn = browser.find_elements(By.CLASS_NAME, "el-sub-menu__title")
for item in sub_btn:
if item.text == '考勤管理系统':
item.click()
if item.text == '考勤管理':
item.click()


time.sleep(1)
item_btn = browser.find_elements(By.CSS_SELECTOR, "li.el-menu-item.menuItem")
for itemS in item_btn:
if itemS.get_attribute("textContent").strip() == '出勤档记录查询':
itemS.click()

…………

标签:el,exe,python,selenium,item,btn,find,browser
From: https://www.cnblogs.com/liao-long/p/17325361.html

相关文章

  • [python] Python枚举模块enum总结
    枚举是一种数据类型,在编程中用于表示一组相关的常量。枚举中的每个常量都有一个名称和一个对应的值,可以用于增强代码的可读性和可维护性。在Python中,枚举是由enum模块提供的,而不是Python提供专用的枚举语法。关于enum模块介绍见:enum。如需详细了解Python的enum模块,参见文章:Python......
  • python代码:基于强化学习的智能电网的动态定价方法
    python代码:基于强化学习的智能电网的动态定价方法摘要:提出了一种考虑服务提供商(SP)利润和用户(CUs)成本的分级电力市场中能量管理的动态定价DR算法。使用强化学习(RL)描述分层决策框架,将动态定价问题描述为离散有限马尔可夫决策过程(MDP),并采用Q学习求解该决策问题。使用RL,S......
  • python报错:divide by zero encountered in log
    原因:数字太小的原因,溢出,计算过程中出现-inf,再做其他运算,结果还是-inf。当概率很小时,取对数后结果趋于负无穷大解决:改变浮点数的精度参考:(51条消息)RuntimeWarning:dividebyzeroencounteredinlog错误解决_旅途中的宽~的博客-CSDN博客......
  • 关于Python爬虫使用技巧
    首先,Python是一种非常流行的编程语言,拥有广泛的应用领域,例如数据分析、人工智能、Web开发等。如果您是初学者,可以开始学习基础的语法和概念,例如变量、数据类型、循环、函数等等。许多在线资源可以提供学习资料。其次,Python拥有大量的第三方库和框架,可以帮助您提高开发效率并处理......
  • Python哪种方式循环最快
    众所周知,Python不是一种执行效率较高的语言。此外在任何语言中,循环都是一种非常消耗时间的操作。假如任意一种简单的单步操作耗费的时间为1个单位,将此操作重复执行上万次,最终耗费的时间也将增长上万倍。while和for是Python中常用的两种实现循环的关键字,它们的运行效率实际上是......
  • python3-list
    1、介绍builtins.py文件中定义了list类,用于处理python中列表数据。list也是python的基本数据类型之一。列表是单列的元素集合,用[]包围,内部元素之间用,分隔列表的元素可以是任意类型,且某一列表中可以同时包含不同类型列表支持元素的增删改列表支持数值索引元素不会进行默认......
  • python3-tuple
    1、介绍builtins.py文件中定义了tuple类,用于处理python中元组数据。tuple也是python的基本数据类型之一。元组是单列的元素集合,用()包围,内部元素之间用,分隔元组的元素可以是任意类型,且某一元组中可以同时包含不同类型元组定义后不支持对容量和元素的修改元组支持数值索引......
  • python3-set
    1、介绍builtins.py文件中定义了set类,用于处理python中集合数据。set也是python的基本数据类型之一。集合是单列的元素集合,用{}包围,内部元素之间用,分隔集合的元素可以是任意类型,且某一集合中可以同时包含不同类型集合定义后可以进行增删改集合不支持数值索引set是无序集......
  • python3-dict
    1、介绍builtins.py文件中定义了dict类,用于处理python中字典数据。list也是python的基本数据类型之一。2、类classdict(object):def__init__(self,seq=None,**kwargs):pass3、字面量初始化键必须是number、str和tuple这几种不可变类型,值可以是任意类型......
  • python3-range
    1、介绍range是一个类,用于帮助for循环。2、类classrange(object):"""range(stop)->rangeobjectrange(start,stop[,step])->rangeobject"""def__init__(self,stop):pass3、使用(1)一个参数foriinrange(3):#遍历0,......