Como obter um simulado Digitação do teclado usando python

4

A ideia é simples. Vamos dizer que eu preciso para obter uma soma pré-escrita de texto, a partir de um arquivo de texto, para exibir na tela usando o teclado para digitá-lo. Isso é diferente de exibir apenas a saída regular do formulário de texto, ele precisa vir do teclado como se alguém estivesse digitando.

Qualquer ideia seria muito útil para mim.

    
por YouBob Brutegeek 27.02.2016 / 07:04

1 resposta

2

Aparentemente, digite texto com uma velocidade arbitrária

Como você quer que ele seja digitado, provavelmente você gostaria que os caracteres aparecessem não muito rápido.

Você pode usar o código abaixo para abrir um arquivo de texto e aparentemente "digitá-lo" em qualquer lugar.

#!/usr/bin/env python3
import subprocess
import time
import sys
# open the textfile
text = open(sys.argv[1]).read().strip()
for ch in text:
    # type out the text
    subprocess.call(["xdotool", "type", ch])
    # increase or decrease the time below to type slower or faster
    time.sleep(0.1)

Como usar

  1. Você precisará do xdotool para ser instalado

    sudo apt-get install xdotool
    
  2. Copie o script para um arquivo vazio, salve-o como type_out.py

  3. Execute-o com o arquivo de texto como um argumento:

    python3 /path/to/type_out.py <textfile>
    

Caso você queira digitar qualquer coisa, você pode querer adicionar uma pequena pausa antes de executá-la, para impedir que ela comece a digitar enquanto você ainda não está pronto ...

É isso aí!

    
por Jacob Vlijm 27.02.2016 / 07:34