Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ. (επεξεργασμένο)

όλες οι κινήσεις του mouse πληκτρολόγηση κλπ γίνονται από script

και εδώ είναι ο κώδικας

# Για να εκτελεστεί αυτός ο κώδικάς 
# ανοίγουμε το mspaint και το κάνουμε maximize
# ανοίγουμε τον python indle ή την win consola ώς admnin 
# και τρέχουμε το script. Έχουμε 10 sec να κάνουμε focus στο mspaint
# αφήνουμε mouse και πληκτρολόγιο μέχρι να τελειώσει

# Έτσι βρίσκεται τις ακριβείς θέσεις των εικονιδίων που γίνεται κλικ , που   
# γράφω ή σχεδιάζω
# Πάω το δείκτη του ποντικιού στη θέση που θέλω στο mspaint και στον indle πληκτρολογώ 
# pyautogui.position()  πχ >>> import pyautogui as pag >>> home=pag.position() 
# >>> home και επιστρέφει (78, 41)


# Εισάγω βιβλιοθήκες
import pyautogui as pag
import time, math

pag.FAILSAFE=True #Αν μετακινήσω το mouse στην επάνω αριστερή γωνία το πρόγραμμα κρασάρει 

pag.PAUSE=0.1 #όλες οι κινήσεις pag εκτελούνται με καθυστέρηση 0.1 δευτερόλεπτα

time.sleep(10)# Έχουμε 10 δεύτερα να ανοίξουμε κάνουμε focus το mspaint και να 
#μετακινήσουμε πάνω του το mouse

pag.moveTo(290,75,1) # μετακινώ το ποντίκι από τη θέση του στις συν/νες του κουμπιού text 
pag.click() #κάνω κλικ

pag.moveTo(47, 214,1) # μετακινώ το ποντίκι εκεί που θα γράψω κείμενο
pag.click()
pag.click()
pag.typewrite('f(x)=sin(x)',0.2) # γράφω κείμενο
pag.moveTo(78,41,1) #μετακινώ το ποντίκι στο home
pag.click() #klik
pag.moveTo(239,79,1) #μετακινώ το ποντίκι στο pencil
pag.click() #klik
import numpy as np 
pag.moveTo(30,350+40*np.sin(30/40),1) # μετακινώ το ποντίκι εκεί θα σχεδιάσω 
for x in np.linspace(30,400,150): # σχεδιάζω
	pag.dragTo(x,350+40*np.sin(x/40),0.05)
	
pag.moveTo(290,75,1) # μετακινώ το ποντίκι από τη θέση του στις συν/νες του text
pag.click() #klik
pag.moveTo(700,300,1) # μετακινώ το ποντίκι εκεί που θα γράψω κείμενο
pag.click() #klik
pag.typewrite('spiral',0.2)# γράφω κείμενο
pag.moveTo(78,41,1) #μετακινώ το ποντίκι στο home
pag.click() #klik
pag.moveTo(239,79,1) #μετακινώ το ποντίκι στο pencil
pag.click() #klik
pag.moveTo(660,350,1)# μετακινώ το ποντίκι εκεί θα σχεδιάσω 
pag.click()
distance = 100
while distance > 0: #Σχεδιάζω το spiral
	pag.dragRel(distance, 0) # move right
	distance = distance - 5
	pag.dragRel(0, distance) # move down
	pag.dragRel(-distance, 0) # move left
	distance = distance - 5
	pag.dragRel(0, -distance) # move up

pag.moveTo(290,75,1) # μετακινώ το ποντίκι από τη θέση του στις συν/νες του text
pag.click() #klik
pag.moveTo(360,173,1) # μετακινώ το ποντίκι εκεί που θα γράψω κείμενο
pag.click() #klik
# γράφω κείμενο
pag.typewrite('Hello INSOMNIA\b\b\b\b\b\b\bnsomnia!!!\npyautogui PYTHON',0.2)

print('Δώσε enter')
input()

ScreenCapture_4-4-2016 8.55.48 PM.wmv

Επεξ/σία από k33theod
  • Like 1
Δημοσ.

Το GUI που είναι; :P

 

Υπέθεσα θα έφτιαχνες gui σε κάποια εφαρμογή κάπως εύκολα. :/

Gui εννοείς παράθυρα windows?

Δημοσ.

@Grim Ripper

Αν αυτό που σε ενδιαφέρει είναι απλά να πάρεις κάποιο input από το χρήστη (matlab φάση) και δε σε νοιάζει να χρησιμοποιήσεις 3rd party libraries (δηλαδή pyqt) μπορείς να χρησιμοποιήσεις κάτι σαν το

https://pypi.python.org/pypi/formlayout

ή αν θες κάτι με πιο πολλές δυνατότητες (και declarative style)

https://pypi.python.org/pypi/guidata

 

It shouldn't be hard to re-implement formLayout using Tkinter as backend

Δημοσ.

Ενδιαφέρον, δεν ήξερα ότι μπορείς να αυτοματοποιήσεις διεργασίες "κίνησης ποντικιού και πληκτρολόγηση" υπάρχει και σε άλλες γλώσσες, ή αποκλειστικά στην Python, και επίσης αυτή η διαδικασία ονομάζεται "AutoGUI"? Ρωτάω, μιας και άνοιξες ήδη θέμα για αυτό.

Δημοσ.

@Grim Ripper

Αν αυτό που σε ενδιαφέρει είναι απλά να πάρεις κάποιο input από το χρήστη (matlab φάση) και δε σε νοιάζει να χρησιμοποιήσεις 3rd party libraries (δηλαδή pyqt) μπορείς να χρησιμοποιήσεις κάτι σαν το

https://pypi.python.org/pypi/formlayout

ή αν θες κάτι με πιο πολλές δυνατότητες (και declarative style)

https://pypi.python.org/pypi/guidata

 

It shouldn't be hard to re-implement formLayout using Tkinter as backend

 

Βασικά δεν μπορώ να γράψω κάτι πέραν από τα προγράμματα που έχουν τα tutorials και δεν ξέρω κατά πόσο θα ξαναπιάσω την python οπότε για την ώρα δεν θέλω κάτι από gui.

 

 

Ωραίο βιβλίο αυτό, το έχω βρει και σε pdf. :P

https://automatetheboringstuff.com/chapter18/

Δημοσ.

Βασικά δεν μπορώ να γράψω κάτι πέραν από τα προγράμματα που έχουν τα tutorials και δεν ξέρω κατά πόσο θα ξαναπιάσω την python οπότε για την ώρα δεν θέλω κάτι από gui.

 

 

Ωραίο βιβλίο αυτό, το έχω βρει και σε pdf. :P

https://automatetheboringstuff.com/chapter18/

Αυτό έχω κι'εγω

Ενδιαφέρον, δεν ήξερα ότι μπορείς να αυτοματοποιήσεις διεργασίες "κίνησης ποντικιού και πληκτρολόγηση" υπάρχει και σε άλλες γλώσσες, ή αποκλειστικά στην Python, και επίσης αυτή η διαδικασία ονομάζεται "AutoGUI"? Ρωτάω, μιας και άνοιξες ήδη θέμα για αυτό.

Η Βιβλιοθήκη λέγεται pyautogui

  • Like 1
  • 1 μήνα μετά...
Δημοσ.

Πριν λίγο καιρό είχα ρωτήσει αν υπάρχει και σε άλλες γλώσσες, αλλά με το λίγο που το έψαξα διάβασα η καλύτερη επιλογή για αυτό είναι η Python, καθώς "επικοινωνεί" καλύτερα με το λειτουργικό σύστημα συγκριτικά με άλλες γλώσσες. Αρχικά θα ήθελα να ρωτήσω αν ισχύει αυτό, και επειδή πραγματικά θέλω να ασχοληθώ με αυτοματισμό, θα ήθελα να ρωτήσω αν προτείνεται να μάθω πρώτα Python, ή να πάω απευθείας στο βιβλίο: "Automate the Boring Stuff with Python" και θα με καλύψει αυτό?

Δημοσ.

Πρώτα θα μάθεις python (έστω τα βασικά) ώστε να ξέρεις λίγο τι παίζει με αυτά που γράφεις και μετά θα διαβάσεις το βιβλίο.

Ξεκίνα με "A Byte of Python" και "Python Succinctly".

Δημοσ. (επεξεργασμένο)

διάβασα η καλύτερη επιλογή για αυτό είναι η Python, καθώς "επικοινωνεί" καλύτερα με το λειτουργικό σύστημα συγκριτικά με άλλες γλώσσες.

 

Δεν ξέρω αν η python είναι η καλύτερη επιλογή για αυτό που θες να κάνεις, αλλά αν ισχύει, σίγουρα δεν είναι εξαιτίας του λόγου που έγραψες...

Επεξ/σία από pmav99

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...