You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用backend为uia的Application定位Home Depot登录字段的方法咨询

定位Home Depot登录字段的UIA实现方案

首先修正启动Chrome的链接,替换为你提供的Home Depot登录页面地址,确保启用无障碍渲染:

from pywinauto import Application
from pywinauto.timings import wait_until_passes

chrome_dir = "你的Chrome安装路径,比如C:\\Program Files\\Google\\Chrome\\Application\\chrome.exe"
login_url = "https://citiretailservices.citibankonline.com/RSnextgen/svc/launch/index.action?siteId=PLCN_HOMEDEPOT#signon&cmp=A%7EC%7EC%7EM%7EZ%7EZ%7EZZZZ%7EZZ%7EHD%7EZZ&desc=R%7EA%7EI%7EZ%7EZ%7EZ%7EZZZZ%7EZZ%7EHD"

# 启动Chrome并加载登录页
chrome = Application(backend='uia')
chrome.start(f'"{chrome_dir}" --force-renderer-accessibility {login_url}')

# 等待Chrome窗口出现并加载完成(超时15秒)
window = wait_until_passes(15, 1, lambda: chrome.window(title_re="Home Depot.*"))

# 定位网页内容容器(Chrome的网页渲染区域)
web_content = window.child_control(control_type='Pane', title='Chrome Legacy Window')

# 定位用户名输入框(需用Windows自带的Inspect工具查看元素实际属性,以下为示例)
username_field = web_content.child_control(control_type='Edit', name='User ID')
# 输入用户名
username_field.type_keys("你的用户名")

# 定位密码输入框
password_field = web_content.child_control(control_type='Edit', name='Password')
# 输入密码
password_field.type_keys("你的密码")

# 定位登录按钮并点击
login_button = web_content.child_control(control_type='Button', name='Sign On')
login_button.click()

关键注意事项:

  • 必须用Windows自带的Inspect工具查看登录字段的实际UIA属性(比如Name、AutomationId、ControlType),示例中的属性需根据页面真实元素调整。
  • 用wait_until_passes替代固定time.sleep(),能更可靠地等待元素加载完成。
  • 如果窗口标题匹配失效,可改用chrome.top_window()获取当前最顶层Chrome窗口。

内容的提问来源于stack exchange,提问作者BillyBon

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 23:20:39