当前位置: 首页 > news >正文

网站小图标 免费上海企业服务公司

网站小图标 免费,上海企业服务公司,开发小程序用什么软件写代码,关于申请网站建设经费的报告【自动化】Python SeleniumUtil 工具 【Python】使用Selenium 操作浏览器 自动化测试 记录-CSDN博客文章浏览阅读58次。文章浏览阅读42次。【附件】Selenium chromedriver 驱动及浏览器下载。【附件】Selenium chromedriver 驱动及浏览器下载-CSDN博客。3.安装Chrome浏览器驱动…【自动化】Python SeleniumUtil 工具 【Python】使用Selenium 操作浏览器 自动化测试 记录-CSDN博客文章浏览阅读58次。文章浏览阅读42次。【附件】Selenium chromedriver 驱动及浏览器下载。【附件】Selenium chromedriver 驱动及浏览器下载-CSDN博客。3.安装Chrome浏览器驱动。2.安装 selenium。1.安装python。https://blog.csdn.net/G971005287W/article/details/144557463 【学习记录】浏览器指纹相关学习记录指纹介绍、获取指纹、修改指纹、随机指纹保护隐私等-CSDN博客文章浏览阅读762次点赞18次收藏7次。可以识别是同一个用户。https://blog.csdn.net/G971005287W/article/details/144528762 【自动化】Python SeleniumUtil 油猴 工具 自动安装用户脚本-CSDN博客文章浏览阅读2次。【自动化】Python SeleniumUtil 工具-CSDN博客。【自动化】Python SeleniumUtil 油猴 工具。【自动化】Python SeleniumUtil 工具。https://blog.csdn.net/G971005287W/article/details/144565736 Python SeleniumUtil import timefrom selenium.webdriver.support.wait import WebDriverWait from selenium import webdriver from selenium.webdriver.chrome.service import Service as ChromeService from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as ECclass SeleniumUtil:class 标签页:staticmethoddef 切换到新窗口句柄(driver, before_handles, after_handles):# 检查是否有新的窗口句柄出现new_handles after_handles - before_handlesif new_handles:# 切换到新打开的标签页new_window new_handles.pop()driver.switch_to.window(new_window)return Trueelse:return Falsestaticmethoddef 获取所有已知窗口句柄(driver):return set(driver.window_handles)staticmethoddef 切换到第一个窗口(driver):# 切换到第一个窗口driver.switch_to.window(driver.window_handles[0])staticmethoddef 切换到当前窗口(driver):# 存储窗口的 IDoriginal_window driver.current_window_handleprint(original_window)# 检查没有打开其他的窗口assert len(driver.window_handles) 1class Driver:#初始化浏览器staticmethoddef 初始化驱动通过Debug模式(驱动路径, debuggerAddress):# 设置Edge选项options webdriver.ChromeOptions()# options.add_experimental_option(prefs,{extensions.ui.developer_mode: True,})options.add_experimental_option(debuggerAddress, debuggerAddress)# C:\\chromedriver\\129.0.6656.0\\chromedriver.exeservice ChromeService(executable_path 驱动路径)# 创建一个新的Edge浏览器实例并启用无痕模式driver webdriver.Chrome(service service, options options)return driver# 如果你只需要确认元素存在但不立即与其交互那么可以使用 presence_of_element_located。# 如果你需要确保元素不仅存在而且可以安全地被用户交互如点击则应使用 element_to_be_clickableclass 页面元素:staticmethoddef 判断元素是否存在(driver, 标签, 内容, 超时时间):element SeleniumUtil.页面元素.获取元素(driver, 标签, 内容, 超时时间)if element is not None:return Trueelse:return Falsestaticmethoddef 点击元素(元素):if 元素 is not None:元素.click()return Trueelse:return Falsestaticmethoddef get元素(driver, 需要交互, 类型, 值, 超时时间):if 超时时间 is None:超时时间 7if 需要交互 is None:需要交互 Truetry:wait WebDriverWait(driver, 超时时间)if 需要交互:元素 wait.until(EC.element_to_be_clickable((类型, 值)))if 元素 is not None:return 元素else:return driver.find_element(类型, 值)else:元素 wait.until(EC.presence_of_element_located((类型, 值)))if 元素 is not None:return 元素else:return driver.find_element(类型, 值)except Exception as e:try:return driver.find_element(类型, 值)except Exception as e2:time.sleep(0)return Nonestaticmethoddef get元素ById(driver, id, 需要交互, 超时时间):return SeleniumUtil.页面元素.get元素(driver, 需要交互, By.ID, id, 超时时间)staticmethoddef get元素By标签及内容(driver, 标签, 内容, 需要交互, 超时时间):return SeleniumUtil.页面元素.get元素(driver, 需要交互, By.XPATH, f//{标签}[text(){内容}], 超时时间)staticmethoddef get元素ByName属性(driver, name, 需要交互, 超时时间):return SeleniumUtil.页面元素.get元素(driver, 需要交互, By.NAME, name, 超时时间)staticmethoddef get元素By标签及属性(driver, 标签, 属性, 属性值, 需要交互, 超时时间):return SeleniumUtil.页面元素.get元素(driver, 需要交互, By.CSS_SELECTOR, f{标签}[{属性}{属性值}], 超时时间)staticmethoddef get元素By标签及属性立即(driver, 标签, 属性, 属性值, 需要交互, 超时时间):值 f{标签}[{属性}{属性值}]print(值)return driver.find_element(By.CSS_SELECTOR, 值)## staticmethod# def 获取元素通过标签及属性(driver, 标签, 属性, 属性值):# try:# element driver.find_element(By.CSS_SELECTOR, f{标签}[{属性}{属性值}])# return element# except Exception as e:# time.sleep(0)# return Noneclass 扩展程序:staticmethoddef 打开扩展程序页(driver):driver.get(chrome://extensions)staticmethoddef 查询开发者模式状态(driver):# 打开目标网页SeleniumUtil.扩展程序.打开扩展程序页(driver)# 使用WebDriverWait等待页面加载完成代替固定等待时间# time.sleep(5)try:wait WebDriverWait(driver, 5)time.sleep(1)js // window.location.href chrome://extensions//获取开发者模式状态let flag document.querySelector(body extensions-manager).shadowRoot.querySelector(#toolbar).shadowRoot.querySelector(#devMode).getAttribute(aria-pressed);if(flag true){return true;}else{return false;}status driver.execute_script(js)print(f当前开发者模式状态-{status})return statusexcept Exception as e:time.sleep(0)staticmethoddef 切换开发者模式状态(driver):try:wait WebDriverWait(driver, 7)time.sleep(1)js document.querySelector(body extensions-manager).shadowRoot.querySelector(#toolbar).shadowRoot.querySelector(#devMode).click();return true;driver.execute_script(js)except Exception as e:time.sleep(0)staticmethoddef 打开开发者模式(driver):SeleniumUtil.扩展程序.修改开发者模式状态(driver, True)staticmethoddef 修改开发者模式状态(driver, flag):# 打开目标网页SeleniumUtil.扩展程序.打开扩展程序页(driver)# 使用WebDriverWait等待页面加载完成代替固定等待时间from selenium.webdriver.support.ui import WebDriverWaitfrom selenium.webdriver.support import expected_conditions as EC开发者模式状态 SeleniumUtil.扩展程序.查询开发者模式状态(driver)if 开发者模式状态 flag:time.sleep(0)else:SeleniumUtil.扩展程序.切换开发者模式状态(driver)print(f修改开发者模式状态-{flag})
http://www.hkea.cn/news/14330003/

相关文章:

  • 小说网站排名人气深圳市住房和城乡建设厅网站首页
  • 佛山新网站制作机构如何搭建情侣网站
  • 上海站有云网络科技有限公司网站推广指标包括
  • 长沙网站推广¥做下拉去118cr网站首页标题字数
  • 杭州网站建设技术广州网页设计美工培训
  • 网站开发 流程wordpress换背景插件
  • 怎样用jsp做网站 新手教程共青城市建设局网站
  • 网站建设的优点和缺点公众号文章到wordpress
  • 网站搜索模块WordPress发图册
  • 做网站怎么挣钱东莞网站建设网络公司排名
  • iis怎么加载网站seo上词价格
  • 官方网站建设建议免费手机网站商城
  • 安卓手机网站开发vps服务器怎么创建多个网站
  • 好的平面设计作品网站无忧传媒在短视频领域的成就
  • 图像放大网站深圳网站制作必推祥奔科技
  • 用div做网站中间部分网站图片3d显示效果
  • 怎么做网站像淘宝这样的郑州做软件开发的公司
  • 网站站点管理电子类网站建设需要多少钱
  • 望牛墩镇做网站公司英文网站建设
  • 茂名建设公司网站微信开发网站开发
  • 阳泉网站设计wordpress产品展示
  • 做网站攻略做网站什么东西需要费用
  • 网站建设都有那些费用产品网络营销分析
  • 网站上的图文介绍怎么做的响应式网站 向下兼容
  • 世界最受欢迎的免费架站平台网络设计方案书中内容很多
  • 最新电子产品网站模板海南定安建设局网站
  • 开网站做销售网站自动售卡怎么做
  • 网站建设公司电话销售话术搭建什么平台如何表达
  • 尤溪建设局网站服务器网站管理系统
  • 网站的风格指的是什么长尾词和关键词的区别