一行Python代码实现键盘自动输入长段英文

受疫情影响,现在还在家上网课,由于英语网课的作业经常会要输入一大段英文字母,由于网站的设置,不能直接粘贴答案,自己写好中文去有道翻译了还得一个个输入,所以尝试了一下利用Python来读取一个txt或其他格式的文本,然后键盘自动输入该文本中的数据到目标网站上,原来的想法是可能需要先将要输入的文本复制粘贴到txt文件中,然后利用python读取文件,再利用库函数进行输入,后面发现利用pyautogui可以一行代码就实现我需要的功能。

 

下面介绍一下用到的工具:

pyautogui

和之前实现鼠标每隔段时间自动点击某目标区域的函数类似,用到了pyautogui库,如其名,功能就是利用pyhton实现GUI自动控制鼠标和键盘,不得不说这个库对于操作鼠标和键盘真的不要太方便。

1.安装: pip install pyautogui

2.typewrite()函数介绍

该函数可以实现键盘自动输入目标字符串,有两个参数,第一个是要输入的字符串,第二个是每次输入的间隔时间,一般设置为0.25s。

pyautogui.typewrite('Hello World', 0.25)

也可以这样输入来实现更多功能:

pyautogui.typewrite(['a', 'b', 'backspace'], '0.25') # 输入a,b后再按一下回车

这里我只需要直接输入一长段英文即可,所以直接利用第一种方式输入就行,一般输入的字数都是几百,这么长的字符串不分行的话肯定会有警告,我自己用的是pycharm测试的,虽然警告但是还是会正常输入完成。

 


 

最终的代码实现如下:

import pyautogui
import time

time.sleep(5)  # 延迟5秒

pyautogui.typewrite('A literary search is an imp...', '0.25')

这里延迟5s是为了空出时间来将光标提前放在要输入的位置。

 

还可以利用该库的其他功能添加一个输入完成的提示功能,代码如下:

pyautogui.alert('输入完成!')

加入此行代码后,输入完成时,会弹出这样一个提示框,单击OK结束。

 

 

 

代码很简单,大家笑一笑就好

因为暂时只需要用到输入英文,要输入中文的话稍微麻烦一点,后续有需求了再研究研究

需要pyautogui的更多功能可以查看:

https://muxuezi.github.io/posts/doc-pyautogui.html

 

posted @ 2020-03-22 13:46  _Cheung  阅读(1955)  评论(0编辑  收藏  举报