Mémo d'automatisation de saisie par Python débutant

Première automatisation

Afin de ne pas copier et écrire ** N'utilisez pas de code inexpliqué ** J'écris le code dans mon cœur. Par conséquent, j'essaye d'inclure de nombreux commentaires dans le programme.

C'est une automatisation par un célèbre jeu de frappe. (Je m'abstiendrai du titre car il existe des conditions d'utilisation.)

Environnement d'exécution

windows python3.6 anaconda3

Code entier

from selenium import webdriver
from time import sleep
import time
from selenium.webdriver.common.action_chains import ActionChains #Nécessaire pour agir
import pyautogui as pa
import pyocr
import pyocr.builders
import cv2
from PIL import Image
#pilote ouvert#
driver = webdriver.Chrome()

#la taille de la fenêtre#
driver.set_window_size(800, 800)

#Site ouvert#
driver.get("http://hogehoge")

#Attendez que le site s'ouvre#
sleep(10)

#Coordonnées du bouton Démarrer#
#>>> pyautogui.position()#
'''
start_x = 400
start_y = 523
'''

#Cliquez sur le bouton de démarrage#
pa.click(400, 523)
sleep(3)
#Cliquez sur le cours#
pa.click(400, 523)
sleep(3)
pa.press(" ")
sleep(3)

i = 0
while True:
    if i > 350:
        break
    print(i)
    #capture d'écran#
    pa.screenshot(imageFilename="sumple.png ", region=(282, 498, 200, 20))
    im = cv2.imread('sumple.png')#Chargement d'image
    gray = cv2.cvtColor(im, cv2.COLOR_BGR2GRAY)#niveaux de gris

    #Binarisation
    im_gray = cv2.imread('sumple.png', 0)#Lire comme échelle de gris
    threshold_val = 100
    ret, thres_im = cv2.threshold(im_gray, threshold_val, 255,cv2.THRESH_BINARY)#Binarisation
    cv2.imwrite('sumple.png', thres_im)#Stockage d'images binarisées
    im_bw = Image.open('sumple.png')

    #Reconnaissance des caractères#
    tool = pyocr.get_available_tools()[0]
    text = tool.image_to_string(im_bw, lang='eng', builder=pyocr.builders.TextBuilder())

    #Saisie de caractères#
    print(text)
    pa.typewrite(text, interval = 0.1)

    i += 1

#Fin#
input("Entrez quelque chose")
driver.close()
driver.quit()

À la fin

C'était mon premier code, il m'a donc fallu beaucoup de temps pour vérifier chacun d'eux. Je continuerai à produire même de petites choses.

Recommended Posts

Mémo d'automatisation de saisie par Python débutant
Résumé de l'apprentissage automatique par les débutants de Python
Typage Python
Réponse à la sélection des débutants d'AtCoder par Python3
Un manuel pour les débutants réalisé par des débutants Python
Mémo de raclage Python
Note d'apprentissage Python_000
Notes d'apprentissage Python
Notes de débutant Python
Typage dynamique de Python
notes de python C ++
Note d'apprentissage Python_005
Notes de grammaire Python
Note sur la bibliothèque Python
notes personnelles python
Les débutants pratiquent Python
Note du débutant Python
mémo pandas python
Note d'apprentissage Python_001
notes d'apprentissage python
Notes d'installation de Python3.4
Notes pour les débutants en Python ayant de l'expérience dans d'autres langues 12 (+1) éléments par fonction
Jugement des nombres premiers par Python
Guide du débutant Python (fonctions)
notes personnelles en python manquantes
Traitement de la communication par Python
Automatisation de l'interface utilisateur avec Python
Les débutants en Python organisent des tris de tas
Notes de développement de package Python
Python débutant touche Pytorch (3)
Mémo du package d'adresse IP Python
Manuel python pour les débutants
Notes sur le format Python Pickle
Guide du débutant du dictionnaire Python
Premier mémo divers sur Python
Réponse de Beamformer par python
Matlab => Notes de migration Python
Python débutant touche Pytorch (1)
Python débutant touche Pytorch (2)
Remarques sur l'affectation Python3
Notes sur l'utilisation de sous-processus Python
Guide du débutant Python (Introduction)
OpenCV pour les débutants en Python
Python essayer / sauf mémo
Notes sur le flacon de framework Python
[Pour les débutants] Les bases de Python expliquées par Java Gold Part 2
■ Kaggle Practice pour les débutants - Introduction de Python - par Google Colaboratory
[Pour les débutants] Les bases de Python expliquées par Java Gold Part 1
mémo python utilisant l'opérateur perl-ternaire
Reconnaissance vocale par Python MFCC
Flux d'apprentissage pour les débutants en Python
API Web EXE par Python
Programme de formation des nouveaux arrivants par Python
Paramétrage par le configurateur python
Remarques sur l'utilisation du test unittest standard Python
Notes Python à oublier bientôt
Pin python géré par conda