当前位置:首页 » 编程语言 » python模拟键盘操作

python模拟键盘操作

发布时间: 2022-05-10 19:02:48

python tkinter怎么模拟键盘输入

python是一款应用非常广泛的脚本程序语言,谷歌公司的网页就是用python编写。python在生物信息、统计、网页制作、计算等多个领域都体现出了强大的功能。python和其他脚本语言如java、R、Perl 一样,都可以直接在命令行里运行脚本程序。工具/原料
python;CMD命令行;windows操作系统
方法/步骤
1、首先下载安装python,建议安装2.7版本以上,3.0版本以下,由于3.0版本以上不向下兼容,体验较差。

2、打开文本编辑器,推荐editplus,notepad等,将文件保存成 .py格式,editplus和notepad支持识别python语法。
脚本第一行一定要写上 #!usr/bin/python
表示该脚本文件是可执行python脚本
如果python目录不在usr/bin目录下,则替换成当前python执行程序的目录。
3、编写完脚本之后注意调试、可以直接用editplus调试。调试方法可自行网络。脚本写完之后,打开CMD命令行,前提是python 已经被加入到环境变量中,如果没有加入到环境变量,请网络

4、在CMD命令行中,输入 “python” + “空格”,即 ”python “;将已经写好的脚本文件拖拽到当前光标位置,然后敲回车运行即可。

❷ 有什么好的软件可以实现录制鼠标和键盘的操作(尽量少手敲),生成脚本供python调用

Python也能象按键精灵一样模拟键鼠操作,直接用Python来做吧,该模块叫pyautogui,了解一下。

importpyautogui
print('PressCtrl-Ctoquit.')
try:
whileTrue:
#.
x,y=pyautogui.position()
positionStr='X:'+str(x).rjust(4)+'Y:'+str(y).rjust(4)
print(positionStr,end='')
print(''*len(positionStr),end='',flush=True)
exceptKeyboardInterrupt:
print(' Done.')

这是Automate_the_Boring_Stuff一书中的演示代码,用于查找当前鼠标的坐标。

❸ 模拟按键控制游戏Python问题,怎么解决

用第三方Python库:PyUserInput 可以模拟鼠标、键盘输入!

❹ python可以制作外挂么

Python可以制作游戏外挂,下面就列举一些必备工具吧!

Python

需要安装autopy和PIL以及pywin32包。

autopy是一个自动化操作的python库,可以模拟一些鼠标、键盘事件,还能对屏幕进行访问,本来我想用win32api来模拟输入事件的,发现这个用起来比较简单,最厉害的是它是跨平台的,请搜索安装;

而PIL那是大名鼎鼎了,Python图像处理的No.1,下面会说明用它来做什么;

pywin32其实不是必须的,但是为了方便(鼠标它在自己动着呢,如何结束它呢),还是建议安装一下,哦对了,我是在win平台上做的,外挂大概只有windows用户需要吧?

截屏和图像处理工具

截屏是获取游戏图像以供分析游戏提示,其实没有专门的工具直接Print Screen粘贴到图像处理工具里也可以。

我用的是PicPick,相当好用,而且个人用户是免费的;

而图像处理则是为了获取各种信息的,我们要用它得到点菜图像后保存起来,供外挂分析判断。

我用的是PhotoShop… 不要告诉Adobe,其实PicPick中自带的图像编辑器也足够了,只要能查看图像坐标和剪贴图片就好饿了,只不过我习惯PS了~

编辑器

这个我就不用说了吧,写代码得要个编辑器啊!俺用VIM,若愿意用写字板也可以……

更多Python知识,请关注:Python自学网!!

❺ 请教python模拟键盘输入

api.keybd_event(86,0,win32con.KEYEVENTF_KEYUP,0) #释放按键
win32api.keybd_event(17,0,win32con.KEYEVENTF_KEYUP,0)
附个键位码表

❻ python pyhook如何实现键盘模拟点击,不是输入,测试了,输入和点击不一样

应该可以,试试用PyAutoGUI

❼ ubuntu|linux下 如何用python 模拟按键

ubuntu下,也就是linux下,通常会用kill -事件编号实现。 你查一下LINUX下的事件就明白了。


kill 进程号 实现上是发了一个信号给指定的进程。 在python里,也可以加载事件处理模块,处理来自其它程序发过来的信号, 当然你可以用KILL工具发信号过来。


ctrl+d也是一个信号,ctrl+c也是一个。具体信号编码我不记得了。不过以前我做多进程管理时就是使用这个方法。 好象信号还可以带参数过来。


你打开python的帮助。看看signal这个模块。我把它的例子拿过来。对你有用不

importsignal,os
defhandler(signum,frame):
print'Signalhandlercalledwithsignal',signum
raiseIOError("Couldn'topendevice!")

#Setthesignalhandleranda5-secondalarm
signal.signal(signal.SIGALRM,handler)
signal.alarm(5)

#Thisopen()mayhangindefinitely
fd=os.open('/dev/ttyS0',os.O_RDWR)

signal.alarm(0)#Disablethealarm

下面是我找到的一些资料。也许有用。


信号的概念

信号(signal)--进程之间通讯的方式,是一种软件中断。一个进程一旦接收到信号就会打断原来的程序执行流程来处理信号。

几个常用信号:

SIGINT终止进程中断进程(control+c)

SIGTERM终止进程软件终止信号

SIGKILL终止进程杀死进程

SIGALRM闹钟信号

进程结束信号SIGTERM和SIGKILL的区别

SIGTERM比较友好,进程能捕捉这个信号,根据您的需要来关闭程序。在关闭程序之前,您可以结束打开的记录文件和完成正在做的任务。在某些情况下,假如进程正在进行作业而且不能中断,那么进程可以忽略这个SIGTERM信号。

对于SIGKILL信号,进程是不能忽略的。这是一个“我不管您在做什么,立刻停止”的信号。假如您发送SIGKILL信号给进程,Linux就将进程停止在那里。

发送信号一般有两种原因:

1(被动式)内核检测到一个系统事件.例如子进程退出会像父进程发送SIGCHLD信号.键盘按下control+c会发送SIGINT信号

2(主动式)通过系统调用kill来向指定进程发送信号

linux操作系统提供的信号

[100003@oss235 myppt]$ kill -l

1) SIGHUP2) SIGINT3) SIGQUIT4) SIGILL

5) SIGTRAP6) SIGABRT7) SIGBUS8) SIGFPE

9) SIGKILL10) SIGUSR111) SIGSEGV12) SIGUSR2

13) SIGPIPE14) SIGALRM15) SIGTERM16) SIGSTKFLT

17) SIGCHLD18) SIGCONT19) SIGSTOP20) SIGTSTP

21) SIGTTIN22) SIGTTOU23) SIGURG24) SIGXCPU

25) SIGXFSZ26) SIGVTALRM27) SIGPROF28) SIGWINCH

29) SIGIO30) SIGPWR31) SIGSYS34) SIGRTMIN

35) SIGRTMIN+136) SIGRTMIN+237) SIGRTMIN+338) SIGRTMIN+4

39) SIGRTMIN+540) SIGRTMIN+641) SIGRTMIN+742) SIGRTMIN+8

43) SIGRTMIN+944) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12

47) SIGRTMIN+13 48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14

51) SIGRTMAX-13 52) SIGRTMAX-12 53) SIGRTMAX-11 54) SIGRTMAX-10

55) SIGRTMAX-956) SIGRTMAX-857) SIGRTMAX-758) SIGRTMAX-6

59) SIGRTMAX-560) SIGRTMAX-461) SIGRTMAX-362) SIGRTMAX-2

63) SIGRTMAX-164) SIGRTMAX

Python提供的信号

Python 2.4.3 (#1, Jun 11 2009, 14:09:58)

[GCC 4.1.2 20080704 (Red Hat 4.1.2-44)] on linux2

Type "help", "right", "credits" or "license" for more information.

>>> import signal

>>> dir(signal)

['NSIG', 'SIGABRT', 'SIGALRM', 'SIGBUS', 'SIGCHLD', 'SIGCLD',
'SIGCONT', 'SIGFPE', 'SIGHUP', 'SIGILL', 'SIGINT', 'SIGIO', 'SIGIOT',
'SIGKILL', 'SIGPIPE', 'SIGPOLL', 'SIGPROF', 'SIGPWR', 'SIGQUIT',
'SIGRTMAX', 'SIGRTMIN', 'SIGSEGV', 'SIGSTOP', 'SIGSYS', 'SIGTERM',
'SIGTRAP', 'SIGTSTP', 'SIGTTIN', 'SIGTTOU', 'SIGURG', 'SIGUSR1',
'SIGUSR2', 'SIGVTALRM', 'SIGWINCH', 'SIGXCPU', 'SIGXFSZ', 'SIG_DFL',
'SIG_IGN', '__doc__', '__name__', 'alarm', 'default_int_handler',
'getsignal', 'pause', 'signal']

操作系统规定了进程收到信号以后的默认行为

但是,我们可以通过绑定信号处理函数来修改进程收到信号以后的行为

有两个信号是不可更改的SIGTOP和SIGKILL

绑定信号处理函数

import os
import signal
from time import sleep

def onsignal_term(a,b):
print '收到SIGTERM信号'

#这里是绑定信号处理函数,将SIGTERM绑定在函数onsignal_term上面
signal.signal(signal.SIGTERM,onsignal_term)

def onsignal_usr1(a,b):
print '收到SIGUSR1信号'
#这里是绑定信号处理函数,将SIGUSR1绑定在函数onsignal_term上面
signal.signal(signal.SIGUSR1,onsignal_usr1)

while 1:
print '我的进程id是',os.getpid()
sleep(10)


运行该程序。然后通过另外一个进程来发送信号。

发送信号

发送信号的代码如下:

import os
import signal

#发送信号,16175是前面那个绑定信号处理函数的pid,需要自行修改
os.kill(16175,signal.SIGTERM)
#发送信号,16175是前面那个绑定信号处理函数的pid,需要自行修改
os.kill(16175,signal.SIGUSR1)

❽ python 怎么通过windows gui(鼠标双击程序图标)打开第三方软件,而不是通过cmd命令

你说的是用python模拟键鼠吧?
下面是一个模拟鼠标键盘操作登录软件的python代码

from pymouse.windows import PyMouse
from pykeyboard import PyKeyboard
import time

m = PyMouse() # 鼠标对象
k = PyKeyboard() # 键盘对象
x_dim, y_dim = m.position() # 获得屏幕尺寸
print('鼠标当前位置: ', x_dim, y_dim)

'''模拟鼠标定时点击'''
#鼠标点击指定位置
m.move(62, 350)
m.click(62,350,1)
for i in range(1,3):
time.sleep(5)
m.click(62,350,1)

'''模拟鼠标键盘登录软件'''
#打开应用
m.click(51,543,1,2)
time.sleep(8)
#输入密码
m.click(568,544,1)
k.type_string('你的密码')
time.sleep(3)
#回车
k.tap_key(k.enter_key)
time.sleep(6)
#确认登录
m.click(568,544,1)
k.press_key(k.alt_key)
k.tap_key('y')
k.release_key(k.alt_key)

❾ 请用Python如何模拟键盘操作

用pywin模块调用win32函数就可以了

import win32api
import win32con
win32api.keybd_event(17,0,0,0) #ctrl键位码是17
win32api.keybd_event(86,0,0,0) #v键位码是86
win32api.keybd_event(86,0,win32con.KEYEVENTF_KEYUP,0) #释放按键
win32api.keybd_event(17,0,win32con.KEYEVENTF_KEYUP,0)

附个键位码表:
字母和数字键 数字小键盘的键 功能键 其它键
键 键码 键 键码 键 键码 键 键码
A 65 0 96 F1 112 Backspace 8
B 66 1 97 F2 113 Tab 9
C 67 2 98 F3 114 Clear 12
D 68 3 99 F4 115 Enter 13
E 69 4 100 F5 116 Shift 16
F 70 5 101 F6 117 Control 17
G 71 6 102 F7 118 Alt 18
H 72 7 103 F8 119 Caps Lock 20
I 73 8 104 F9 120 Esc 27
J 74 9 105 F10 121 Spacebar 32
K 75 * 106 F11 122 Page Up 33
L 76 + 107 F12 123 Page Down 34
M 77 Enter 108 -- -- End 35
N 78 - 109 -- -- Home 36
O 79 . 110 -- -- Left Arrow 37
P 80 / 111 -- -- Up Arrow 38
Q 81 -- -- -- -- Right Arrow 39
R 82 -- -- -- -- Down Arrow 40
S 83 -- -- -- -- Insert 45
T 84 -- -- -- -- Delete 46
U 85 -- -- -- -- Help 47
V 86 -- -- -- -- Num Lock 144
W 87
X 88
Y 89
Z 90
0 48
1 49
2 50
3 51
4 52
5 53
6 54
7 55
8 56
9 57

❿ 来自电脑网络类芝麻团 2019-03-25 怎么用Python象按键精灵一样模拟键鼠操作

python可以用sukulix模块来实现键盘鼠标的控制

热点内容
安卓手机九宫格忘记密码怎么解 发布:2025-05-11 05:00:30 浏览:594
安卓手机拼多多怎么解绑银行卡 发布:2025-05-11 05:00:25 浏览:685
校园网可以搭建服务器地址 发布:2025-05-11 04:54:40 浏览:785
noip算法 发布:2025-05-11 04:53:51 浏览:50
有什么我的世界服务器启动器 发布:2025-05-11 04:50:41 浏览:296
写shell脚本 发布:2025-05-11 04:37:41 浏览:935
电脑服务器打开有什么用 发布:2025-05-11 04:36:49 浏览:98
sqlserver2008查询时间 发布:2025-05-11 04:15:28 浏览:386
安卓孤胆车神被封号怎么解封 发布:2025-05-11 04:05:22 浏览:940
高压洗车泡沫怎么配置 发布:2025-05-11 04:00:47 浏览:547