鱼C论坛

 找回密码
 立即注册
查看: 108|回复: 6

[作品展示] Python自动发消息程序

[复制链接]
发表于 2025-7-24 19:10:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 冲浪的口香糖 于 2025-7-24 19:13 编辑

用python的pynput做了一个自动发消息的程序,提示:用使用他时最好用英文输入法
代码:
  1. from pynput import mouse,keyboard
  2. import time as t

  3. m = mouse.Controller()
  4. c = keyboard.Controller()
  5. tt = input('请输入文本:')
  6. cc = int(input('请输入次数:'))
  7. def debug_mouse():
  8.     """调试用:打印当前鼠标位置"""
  9.     print(f"当前鼠标位置: {m.position}")

  10. def enter(text):
  11.     c.type(text)          # 输入文本
  12.     t.sleep(0.2)          # 短暂延迟
  13.     c.press(keyboard.Key.enter)  # 按下回车
  14.     c.release(keyboard.Key.enter)  # 释放回车
  15.     print(f"已尝试发送: {text}")

  16. def chat(message):
  17.     # 1. 移动鼠标到输入框并点击(确保焦点)
  18.     debug_mouse()  # 打印初始位置
  19.     input("手动将鼠标移动到输入框,按回车记录位置...")
  20.     input_x, input_y = m.position  # 记录输入框位置
  21.     print(f"记录输入框位置: ({input_x}, {input_y})")

  22.     # 2. 点击输入框激活
  23.     m.position = (input_x, input_y)
  24.     m.click(mouse.Button.left, 1)
  25.     t.sleep(0.5)
  26.     # 3. 输入并发送消息
  27.     for i in range(cc+1):
  28.         enter(message)
  29.         t.sleep(0.5)

  30. #发送消息
  31. chat(tt)
复制代码


效果图:
无标题.png
屏幕截图 2025-07-24 190417.png

评分

参与人数 1荣誉 +6 鱼币 +6 贡献 +6 C币 +6 收起 理由
小甲鱼 + 6 + 6 + 6 + 6 鱼C有你更精彩^_^

查看全部评分

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2025-7-24 19:12:38 | 显示全部楼层
下面是对你编写的Python自动发消息程序的解析和建议:


  1. from pynput import mouse, keyboard
  2. import time as t

  3. # 创建鼠标和键盘控制器
  4. m = mouse.Controller()
  5. k = keyboard.Controller()

  6. # 获取用户输入
  7. message = input('请输入文本: ')
  8. repeat_count = int(input('请输入发送次数: '))
  9. delay = float(input('请输入每次发送间隔(秒): '))  # 新增间隔时间参数

  10. print("程序将在5秒后启动,请切换到目标窗口...")
  11. t.sleep(5)  # 给用户切换窗口的时间

  12. def send_message(text):
  13.     """发送单条消息"""
  14.     k.type(text)  # 输入文本
  15.     t.sleep(0.1)
  16.     k.press(keyboard.Key.enter)
  17.     k.release(keyboard.Key.enter)
  18.     print(f"已发送: {text}")

  19. # 主执行函数
  20. def start_chatting():
  21.     print("请将鼠标移动到输入框内,3秒后记录位置...")
  22.     t.sleep(3)
  23.     input_pos = m.position  # 自动获取当前位置
  24.     print(f"已记录输入框位置: {input_pos}")
  25.    
  26.     # 点击输入框激活
  27.     m.position = input_pos
  28.     m.click(mouse.Button.left, 1)
  29.     t.sleep(0.5)
  30.    
  31.     # 循环发送消息
  32.     for i in range(repeat_count):
  33.         send_message(message)
  34.         t.sleep(delay)  # 使用自定义间隔

  35. start_chatting()
  36. print(f"已完成 {repeat_count} 次消息发送!")
复制代码


主要改进点:
1. 添加了 delay 参数控制发送间隔,避免消息轰炸
2. 自动获取鼠标当前位置,无需手动回车确认
3. 增加5秒等待时间,方便用户切换窗口
4. 优化了变量命名 (k 代替 c 更符合键盘controller)
5. 添加了完成提示

使用注意事项:
1. 确保目标窗口处于激活状态
2. 推荐英文输入法(避免中文输入法候选框干扰)
3. 首次运行时可能需要管理员权限
4. 间隔时间建议设置在0.5秒以上

常见问题解决:
o 若消息发送不全 → 增加 t.sleep(0.1) 中的延迟值
o 若焦点丢失 → 在循环内添加点击操作
o 特殊字符异常 → 改用 k.press() 逐个输入

这个版本更加稳定实用,你可以根据需要调整时间参数。实际使用时请注意遵守目标平台的使用规则哦!

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-7-24 20:52:43 From FishC Mobile | 显示全部楼层
这个功能我也用搞过
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2025-7-24 23:38:02 | 显示全部楼层

加上pyautogui就更好了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 | 显示全部楼层
不得不说,ilovefishc.com 很优秀
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 | 显示全部楼层
太强了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 7 天前 | 显示全部楼层
牛逼啊,还刚看小甲鱼视频学习中
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-8-1 15:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表