'commit'
This commit is contained in:
@@ -123,16 +123,25 @@ async def open_mini_program():
|
||||
# 点击后给予一定的加载时间
|
||||
await asyncio.sleep(2)
|
||||
|
||||
# 2. 直接尝试输入内容 (既然已经看到了搜索界面,我们不再进行严格的特征校验)
|
||||
# 2. 确保输入法和焦点正常,然后输入搜索内容
|
||||
logger.info("准备输入搜索内容: 新电途")
|
||||
|
||||
# 启用 u2 快速输入法 (使用更新的方法名)
|
||||
# d.set_input_ime(True)
|
||||
# 尝试启用 FastInputIME,提升 send_keys 的成功率
|
||||
try:
|
||||
logger.info("尝试启用 FastInputIME 输入法...")
|
||||
d.set_input_ime(True)
|
||||
logger.info("FastInputIME 已启用.")
|
||||
except Exception as e:
|
||||
logger.warning(f"启用 FastInputIME 失败: {e}")
|
||||
|
||||
# 尝试点击搜索框位置以确保获取焦点 (通常在顶部居中偏左)
|
||||
# search_bar_x, search_bar_y = int(w * 0.4), int(h * 0.08)
|
||||
# d.click(search_bar_x, search_bar_y)
|
||||
# await asyncio.sleep(1.5) # 稍微多等一会儿让输入法准备好
|
||||
# 再点击一次搜索框,确保真正拿到输入焦点
|
||||
try:
|
||||
search_bar_x, search_bar_y = int(w * 0.4), int(h * 0.08)
|
||||
logger.info(f"再次点击搜索框以获取焦点: ({search_bar_x}, {search_bar_y})")
|
||||
d.click(search_bar_x, search_bar_y)
|
||||
await asyncio.sleep(1.5)
|
||||
except Exception as e:
|
||||
logger.warning(f"点击搜索框以获取焦点失败: {e}")
|
||||
|
||||
# 直接发送按键
|
||||
try:
|
||||
@@ -151,12 +160,17 @@ async def open_mini_program():
|
||||
logger.info("set_text 指令已发送.")
|
||||
except Exception as e2:
|
||||
logger.error(f"文字输入彻底失败: {e2}")
|
||||
# 最后的尝试:切换回默认输入法(有时 FastInputIME 会卡住)
|
||||
# d.set_fastinput_ime(False)
|
||||
# d.send_keys("新电途")
|
||||
|
||||
await asyncio.sleep(3)
|
||||
|
||||
# 尝试恢复系统默认输入法,避免后续人工操作受影响
|
||||
try:
|
||||
logger.info("尝试恢复系统默认输入法...")
|
||||
d.set_input_ime(False)
|
||||
logger.info("已恢复系统默认输入法.")
|
||||
except Exception as e:
|
||||
logger.warning(f"恢复系统默认输入法失败: {e}")
|
||||
|
||||
# # 兜底点击:点击搜索结果的第一项位置 (x=50%, y=18%)
|
||||
# res_x, res_y = int(w * 0.5), int(h * 0.18)
|
||||
# logger.info(f"尝试坐标点击第一项: ({res_x}, {res_y})")
|
||||
|
||||
Reference in New Issue
Block a user