自动化控制,通过键盘打开网址,并找到图像进行单击

复制代码
from DrissionPage._pages.chromium_page import ChromiumPage
page = ChromiumPage()
import pyautogui

import time
page.get("http://www.baidu.com")
pyautogui.hotkey('ctrl','l')
pyautogui.write('http://www.2345.com')
pyautogui.press('enter')
pyautogui.press('enter')

time.sleep(5)
button_img = cv2.imread('fh.png')
button_location = pyautogui.locateAll(button_img)
if button_location is not None:
    button_x,button_y = pyautogui.center(button_location)
    pyautogui.click(button_x,button_y)
else:
    print('没有找到按钮图像')

以下是对这段代码的分析:

一、整体功能

这段代码的主要功能是使用 DrissionPage 的 ChromiumPage 打开百度网页,然后通过模拟键盘操作将地址改为http://www.2345.com并访问,接着等待 5 秒后,尝试在当前屏幕中找到名为fh.png的图像所对应的按钮,如果找到则点击该按钮,否则输出 "没有找到按钮图像"。

二、代码详解

from DrissionPage._pages.chromium_page import ChromiumPage和page = ChromiumPage():

这部分代码导入了 DrissionPage 库中的 ChromiumPage 类,并创建了一个名为page的实例,用于控制 Chromium 浏览器。

page.get("http://www.baidu.com"):

使用page实例打开百度的网址。

import pyautogui和后续与pyautogui相关的代码:

pyautogui是一个用于自动化 GUI 操作的库。

pyautogui.hotkey('ctrl','l')模拟按下 "Ctrl+L" 组合键,通常用于选中浏览器地址栏。

pyautogui.write('http://www.2345.com')在地址栏中输入新的网址。

pyautogui.press('enter')两次,确认输入并访问新网址。

time.sleep(5):

让程序暂停 5 秒,等待页面加载。

button_img = cv2.imread('fh.png')、button_location = pyautogui.locateAll(button_img)和后续的条件判断:

这里使用cv2(OpenCV)库读取一个名为fh.png的图像,然后通过pyautogui.locateAll在屏幕上查找该图像的位置。如果找到,计算图像中心坐标并点击;如果未找到,则输出提示信息。

相关推荐
画中有画13 分钟前
在自动化脚本中调用其他脚本文件
运维·自动化
Android系统攻城狮26 分钟前
Linux FFmpeg深度解析之avcodec_alloc_context3调用流程与实战(十四)
linux·运维·ffmpeg·车载音视频·音视频进阶·ffmpeg音视频进阶
老李IT笔记27 分钟前
抹除之后机器上的受管应用可以留下:这一步省掉的是哪段时间
运维·服务器
环境栈笔记1 小时前
指纹浏览器安卓怎么用?从运行位置到功能验收,先把三种方案分清
前端·人工智能·后端·自动化
李纲明1 小时前
WordPress 定时发布不准点或备份/邮件从不跑:先分清 WP-Cron 触发与 DISABLE_WP_CRON,再查回环与系统 Cron
运维·性能优化·wordpress·定时任务·devdiy·wp-cron
Decay__1 小时前
01_MySQL 体系架构全解 —— 连接层、SQL 层、存储引擎层与 InnoDB 深入
运维·数据库·sql·mysql·架构
Linux_cy2 小时前
nginx 502 排查手册:九种原因分类、定位命令与检查顺序
linux·运维·服务器·网络·数据库·nginx·ssh
椒颜皮皮虾྅2 小时前
模型部署不再卡在环境上:DeploySharp 四大推理引擎与 Windows/Linux 离线交付实战
linux·运维·开发语言·人工智能·windows·计算机视觉·cuda
奈落242 小时前
工程界讲角色边界,控制论讲博弈与稳定性:从 Swarms 的实践清单到《自动化学报》的协同综述,多智能体‘协同‘这件事有两套语言
人工智能·深度学习·自动化·ai 编程
我要见SA姐12 小时前
Chrome 内存泄漏诊断指南:从现象定位到根因排查
ide·vscode·python·自动化·编辑器