实用Python定时点击Chrome网页按钮

# conda create -n python39 python=3.9# 导入 selenium 和 time 库
from webdriver_manager.chrome import ChromeDriverManager # python -m pip install webdriver-manager
# service = ChromeService(executable_path=ChromeDriverManager().install())
# driver = webdriver.Chrome(service=service)from selenium import webdriver # python -m pip install selenium
# driver = webdriver.Chrome(executable_path="chromedriver.exe") # 创建一个浏览器对象
# driver = webdriver.Chrome(executable_path="msedgedriver.exe") # 创建一个浏览器对象
from selenium.webdriver.chrome.service import Service# https://developer.microsoft.com/en-us/microsoft-edge/tools/webdriver/?form=MA13LH#downloads
service = Service(executable_path="ChromePortable64-110.0.5481.178\chromedriver.exe")
# 连接到127.0.0.1:9222
options = webdriver.ChromeOptions()
options.add_experimental_option("debuggerAddress", "127.0.0.1:9515") #  --remote-debugging-port=9222
#
driver = webdriver.Chrome(service=service, options=options) # 1. 使用驱动实例开启会话
print(driver)import time
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as ECwait = WebDriverWait(driver, 10) # 设置显式等待为10秒
original_window = driver.current_window_handle # 存储原始窗口的 ID
print("original_window: ", driver.current_window_handle)
# assert len(driver.window_handles) == 1
# 循环执行,直到找到一个新的窗口句柄
# driver.quit()
for window_handle in driver.window_handles:print("window_handle: ", window_handle)# 关闭 window_handledriver.switch_to.window(window_handle)# print(driver.title)# driver.title 包含 "在线考试" if "baidu.com" in driver.current_url and "百度" in driver.title:# driver.close()breakelse:# driver.close()pass
# exit()  
tingzhi = driver.find_elements(By.XPATH, "/html/body/div[2]/div[3]/div[2]/div[1]/div[2]/div[1]/div/div[3]/table/tbody/tr[1]/td[6]/div/div/a[2]")[0]
print(tingzhi.text)
print(tingzhi.get_attribute('class'))
# exit()
while True:anniu= driver.find_elements(By.XPATH, "/html/body/div[2]/div[3]/div[2]/div[1]/div[2]/div[1]/div/div[3]/table/tbody/tr[1]/td[6]/div/div/a[1]")[0]if(anniu.text == "按钮"):if(anniu.get_attribute('class') == ""):anniu.click()while True:#等待text变为xxanniu= driver.find_elements(By.XPATH, "/html/body/div[2]/div[3]/div[2]/div[1]/div[2]/div[1]/div/div[3]/table/tbody/tr[1]/td[6]/div/div/a[1]")[0]if(anniu.text == "按钮"):print("开始计时...")#运行29分钟time.sleep(28 * 60) # 29m# time.sleep(10) # 10sbreakelse:print("启动中...")time.sleep(3)continue   tingzhi = driver.find_elements(By.XPATH, "/html/body/div[2]/div[3]/div[2]/div[1]/div[2]/div[1]/div/div[3]/table/tbody/tr[1]/td[6]/div/div/a[2]")[0]if(tingzhi.get_attribute('class') == ""):tingzhi.click()while True:#等待停止变蓝色anniu= driver.find_elements(By.XPATH, "/html/body/div[2]/div[3]/div[2]/div[1]/div[2]/div[1]/div/div[3]/table/tbody/tr[1]/td[6]/div/div/a[1]")[0]if(anniu.get_attribute('class') == ""):print("停止完成")breakelse:print("停止中...")time.sleep(3)continue   continue
# driver.quit()

python -m pip install webdriver-manager selenium -y

用Python的好处就是稳定,完全模拟了手动操作,用浏览器控制台的JavaScript总感觉是假死啊。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/658271.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Vue学习Element-ui

声明:本文来源于黑马程序员PDF讲义 Ajax 我们前端页面中的数据,如下图所示的表格中的学生信息,应该来自于后台,那么我们的后台和前端是 互不影响的2个程序,那么我们前端应该如何从后台获取数据呢?因为是2…

防抖,节流

前言 防抖是回城,节流是攻击 防抖和节流是前端开发中常用的函数优化,可以限制函数的执行频率,提升性能和用户体验。在日常开发中可以遇到一些需要对函数进行优化的场景,比如防止表单反复提交。 防抖、节流区别 防抖&#xff1a…

博云科技与中科可控全面合作,探索前沿金融科技新机遇

2024年1月26日,博云科技与中科可控在昆山高新区成功举办合作签约仪式。昆山市委常委、昆山高新区党工委书记孙道寻、中科可控董事长聂华、博云科技董事长花磊等领导出席了本次签约仪式。 中科可控将利用其在先进计算和智造领域的优势,为博云科技提供有关…

AI人工智能可以怎么应用?——GPT4v图文识别问答功能

沃卡 AI 已支持 AI识图问答TTS语音对话文档总结对话Dall E3 对话文生图国内大模型集合AI 绘画思维导图,而且功能还在不断更新优化,丰富好用!一个系统满足您多个需求! 大家可以通过收藏网页www.woka.chat 直接进行访问&#xff0c…

springboot-前后端分离——第一篇

本篇主要对前后端分离的一些基础知识进行总结,主要对HTTP请求协议、HTTP响应格式、Http协议解析等进行总结。重点在于简单了解前端如何向服务端发送请求,服务端如何接收请求并返回响应结果。 一、简单案例: 首先创建一个springboot项目&…

异步任务的一些思考

前言 XXL-Job部署教程 项目中,必然少不了数据的导入导出,针对数据的导入导出简单复盘一下。 为了不占用资源消耗时间,影响用户体验,大量数据的导入导出一般都是异步执行 导入的时候,如果数据量很大,一次…

八神庵:性格冲突与个性魅力在《拳皇》中的深度解读

在SNK的著名格斗游戏系列《The King Of Fighters》(拳皇)中,八神庵是一位极具代表性和复杂性的角色。他的性格特征不仅塑造了其独特的个人魅力,而且也成为了剧情发展的重要推动力。本文旨在探讨八神庵的性格特点及其在游戏内外所展…

Wireshark网络协议分析 - TCP协议

在我的博客阅读本文 文章目录 1. 基础2. 实战2.1. 用Go写一个简单的TCP服务器与客户端2.2. Wireshark抓包分析2.3. 限制数据包的大小——MSS与MTU2.4. 保证TCP的有序传输——Seq,Len与Ack2.5. TCP头标志位——URG,ACK,PSH,RST&…

cleanmymacX有必要买吗

CleanMyMac X是一款被广泛推荐的Mac电脑清理软件。以下是关于是否购买CleanMyMac X的几个关键点: 软件功能:CleanMyMac X具备多项功能,包括但不限于系统垃圾清理、缓存清理、恶意软件移除、隐私保护等。这些功能有助于保持Mac电脑的清洁和性能…

StarRocks -- 基础概念(数据模型及分区分桶)

1. 数据模型 StarRocks提供四种数据模型: Duplicate Key, Aggregate Key, Unique Key, Primary Key 1.1 Duplicate Key 适用场景: 分析原始数据,如原始日志和原始操作记录。可以使用多种方法查询数据,不受预聚合方法的限制。加…

第七篇:node中间件详解

🎬 江城开朗的豌豆:个人主页 🔥 个人专栏 :《 VUE 》 《 javaScript 》 📝 个人网站 :《 江城开朗的豌豆🫛 》 ⛺️ 生活的理想,就是为了理想的生活 ! ​ 目录 📘 引言: &#…

【Opcua】 客户端读写时,Opcua Server信息返回处追溯(1)

【Opcua】 客户端读写时,Opcua Server信息返回处追溯(1) 前言从客户端角度展开分析从服务端角度展开分析 前言 基于前文【Node-RED】node-red-contrib-opcua-server模块使用(2)介绍,我们已经了解到NodeRed…

【EI会议征稿通知】第四届信号图像处理与通信国际学术会议(ICSIPC 2024)

第四届信号图像处理与通信国际学术会议(ICSIPC 2024) 2024 4th International Conference on Signal Image Processing and Communication 第四届信号图像处理与通信国际学术会议(ICSIPC2024)将于2024年5月17日-19日在陕西西安再…

测试面试题(0101设计测试用例关键)

1. 测试计划 测试范围,本次改动的模块,新增了哪些功能测试策略,包含测试依据,测试准入标准,准出标准,测试重点及方法(确认功能的优先级),测试工具的选择测试管理&#x…

MySQL进阶之存储过程(变量)

存储过程 存储过程是事先经过编译并存储在数据库中的一段 SQL 语句的集合,调用存储过程可以简化应用开发 人员的很多工作,减少数据在数据库和应用服务器之间的传输,对于提高数据处理的效率是有好处的。 存储过程思想上很简单,就…

用友NC Cloud及YonBIP PMCloudDriveProjectStateServlet JNDI注入漏洞

免责声明:文章来源互联网收集整理,请勿利用文章内的相关技术从事非法测试,由于传播、利用此文所提供的信息或者工具而造成的任何直接或者间接的后果及损失,均由使用者本人负责,所产生的一切不良后果与文章作者无关。该…

【伪类·HTML】

伪类 在 CSS 中,伪类是添加到选择器的关键字,给指定元素设置一些特殊状态,以 : 开头。 链接有以下四个状态。这四种状态也称之为超链接的伪类。 对于超链接的伪类,推荐的使用顺序是: :link - :visited - :hover - :a…

C++ STL库之Vector简介及例题(哈希表)(一)

文章目录 C STL库之Vector简介及例题(哈希表)(一)一、初始化二、数值操作例题题解哈希表简析C哈希表初始化C哈希表基本操作 C STL库之Vector简介及例题(哈希表)(一) Vector是一个能…

代码随想录刷题笔记-Day15

1. 完全二叉树的的节点个数 222. 完全二叉树的节点个数https://leetcode.cn/problems/count-complete-tree-nodes/ 给你一棵 完全二叉树 的根节点 root ,求出该树的节点个数。 完全二叉树 的定义如下:在完全二叉树中,除了最底层节点可能没…

幻兽帕鲁服务器多少钱?幻兽帕鲁服务器价格,2月最新

2024年幻兽帕鲁服务器价格表更新,阿里云、腾讯云和华为云Palworld服务器报价大全,4核16G幻兽帕鲁专用服务器阿里云26元、腾讯云32元、华为云26元,阿腾云atengyun.com分享幻兽帕鲁服务器优惠价格表,多配置报价: 幻兽帕鲁…