From 5065fd4ff50baa25c473d5f9943e951e190ce5c1 Mon Sep 17 00:00:00 2001 From: Ke Date: Thu, 2 Apr 2026 15:12:06 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E8=84=9A=E6=9C=AC=E5=8F=91?= =?UTF-8?q?=E9=80=81=E6=96=87=E5=AD=97=E6=B6=88=E6=81=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 将按键操作改为输入'钓鱼'和'收杆'文字 - 添加输入后的短暂延迟确保输入完成 - 更新文档说明文字消息功能 - 添加中文输入和回车确认注意事项 --- README.md | 32 ++++++++++++++++++-------------- main.py | 14 ++++++++------ 2 files changed, 26 insertions(+), 20 deletions(-) diff --git a/README.md b/README.md index 7c89543..f190a7f 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ ## 功能特点 - 自动查找并激活目标窗口 -- 发送钓鱼和收杆消息(可自定义按键) +- 发送钓鱼和收杆文字消息(可自定义内容) - 时间间隔可配置 - 支持有限循环或无限循环 - 完整的日志记录 @@ -55,24 +55,24 @@ python main.py --test | `--cycles` | `-c` | `0` | 循环次数(0表示无限循环) | | `--test` | `-t` | `False` | 测试模式,只运行一个周期并显示详细信息 | -### 自定义按键 +### 自定义消息 -如果需要修改发送钓鱼/收杆消息的按键,请编辑 `main.py` 文件中的以下方法: +如果需要修改发送的钓鱼/收杆消息内容,请编辑 `main.py` 文件中的以下方法: -1. `send_fishing_message()` - 默认按 'F' 键 -2. `send_reel_message()` - 默认按空格键 +1. `send_fishing_message()` - 默认输入 "钓鱼" 文字 +2. `send_reel_message()` - 默认输入 "收杆" 文字 -可以修改为其他按键,例如: +可以修改为其他文字或按键操作,例如: ```python -# 改为按 '1' 键 -pyautogui.press('1') +# 改为其他文字 +pyautogui.typewrite('开始钓鱼') -# 组合键 -pyautogui.hotkey('ctrl', 'f') +# 改为按键操作 +pyautogui.press('f') -# 鼠标点击 -pyautogui.click(x=100, y=200) +# 组合键发送 +pyautogui.hotkey('enter') ``` ## 稳定性验证 @@ -114,6 +114,8 @@ pyautogui.click(x=100, y=200) 2. **时间间隔**:根据实际游戏需要调整间隔时间 3. **防检测**:某些游戏禁止自动化,使用前请了解游戏规则 4. **分辨率**:脚本不依赖于屏幕坐标,但窗口需要可见 +5. **中文输入**:脚本直接输入中文字符,请确保输入法处于英文状态或游戏支持直接输入 +6. **回车确认**:如需在输入后按回车发送,可在`typewrite()`后添加`pyautogui.press('enter')` ## 故障排除 @@ -122,9 +124,11 @@ pyautogui.click(x=100, y=200) - 窗口是否最小化或隐藏 - 尝试使用部分标题匹配 -### 按键不起作用 +### 消息不起作用 - 确认游戏窗口处于激活状态 -- 检查游戏按键设置 +- 检查输入法状态,确保处于英文输入模式 +- 确认游戏聊天框已打开并可以输入文字 +- 如需回车发送,在代码中添加`pyautogui.press('enter')` - 尝试增加激活后的等待时间 ### 权限问题 diff --git a/main.py b/main.py index b79b7a2..58b8916 100644 --- a/main.py +++ b/main.py @@ -89,8 +89,9 @@ class FishingBot: """ try: # 这里根据实际需要修改发送方式 - # 示例:模拟按下'F'键(常见游戏钓鱼键) - pyautogui.press('f') + # 示例:输入"钓鱼"文字 + pyautogui.typewrite('钓鱼') + time.sleep(0.1) logger.info("发送钓鱼消息") return True except Exception as e: @@ -106,8 +107,9 @@ class FishingBot: """ try: # 这里根据实际需要修改发送方式 - # 示例:模拟按下空格键(常见游戏收杆键) - pyautogui.press('space') + # 示例:输入"收杆"文字 + pyautogui.typewrite('收杆') + time.sleep(0.1) logger.info("发送收杆消息") return True except Exception as e: @@ -197,8 +199,8 @@ def main(): """主函数""" import argparse - parser = argparse.ArgumentParser(description='窗口钓鱼自动化脚本') - parser.add_argument('--window', '-w', default='魔兽世界', + parser = argparse.ArgumentParser(description='窗口钓鱼自动化脚本') + parser.add_argument('--window', '-w', default='一念成仙', help='目标窗口标题(支持部分匹配)') parser.add_argument('--interval', '-i', type=float, default=5.0, help='钓鱼和收杆之间的时间间隔(秒)')