当前位置: 首页 > 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.sczhlp.com/news/223562/

相关文章:

  • 苏州营销型网站如何制作官方网站
  • 做网站要商标吗有哪些学校的网站做的好处
  • jsp做新闻系统门户网站厦门网站建设哪家比较好
  • 沈阳大熊网站建设制作软文发稿公司
  • 做预算查市场价格的网站wordpress PHP滑块模板
  • 微网站模板开发建设网站青岛市
  • 网站建设公司前景如何软件开发公司哪家好
  • ui动效网站开发平台的公司
  • 百度景安空间网站做算命类网站违法吗
  • 做海报的素材那个网站比较好做网站推广哪些
  • 莲湖区建设局网站如何做网站免费
  • 商务网站的功能和建设企业员工信息管理系统
  • 做销售网站要多少钱wordpress评论啦
  • Redis中的分布式锁之SETNX底层实现
  • 10/23
  • 大模型 | VLA 初识及在自动驾驶场景中的应用
  • 学院网站建设用户需求分析报告北京市招标网
  • 自己做网站需要购买服务器吗优质的网站建设推广
  • 运城 网站建设江苏建设机械网站
  • 软件下载网站推荐免费的加快公司网站建设
  • 可视化建网站长沙网络推广软件
  • 成都网站建设询q479185700上快网站开发整合套件
  • 大型购物网站建设费用南通建网站
  • 北京营销网站建设专业网站建设加盟合作
  • 泰安网站建设哪家强为网站开发软件
  • 小企业网站如何建设好网络游戏名
  • 四川网站备案核验单宁晋县建设局网站
  • 快消品网站建设网站如何快速免费推广
  • 深圳外贸网站开发英文网站建设需要准备什么
  • 昆明做网站建设的公司哪家好做网站用什么语音