Affichage des articles dont le libellé est watir. Afficher tous les articles
Affichage des articles dont le libellé est watir. Afficher tous les articles

jeudi 5 mars 2020

AutoIt - Automatisation de tâche

Ruby permet de gérer un certain nombre de tâches sur les OLE windows (objet COM). Certaines technologies anciennes n'ont pas de dll (ex.: DDE).
Pour aller plus loin avec l'automatisation (automation) il existe des langages permettant d'émuler les clics souris ou les touches du clavier. AutoIt est un bon exemple, très poussé il permet de créer un exécutable et même de gérer une GUI (IHM).

Certaines options de logiciel ne sont accessibles que via l'interface graphique (ou bien connaître la bonne fonction de la dll à lancer...)
Ex.: export des méta-données de Datastage.
Il peut se révéler alors très pratique d'automatiser toute une chaine, export des méta-donneés inclues, ce qui n'est possible autrement et là... on gagne de la valeur ajoutée !
Rien n'est impossible en informatique, cela demande du temps et de la compétence.

AutoIt avec Ruby ? vous pensez bien que Ruby ne pouvait pas passer à côté d'une si belle librairie !
>$ gem install watir
enregistrer la dll (démarrez exécuter > "regsvr32 C:\ruby\lib\ruby\gems\1.8\gems\watir-1.4.1\watir\AutoItX3.dll")

Pour tester :
require 'rubygems'
require 'win32ole'
a = WIN32OLE.new("AutoItX3.Control")
a.mousemove(100, 100)
a.mouseclick

*-*-*-*-*-**-*-*-*-*-*-*-*
ruby with AutoItX

http://wtr.rubyforge.org/
http://www.autoitscript.com/forum/index.php?showtopic=57887&st=0&p=437832&#entry437832
http://arton.hp.infoseek.co.jp/index.html
http://www.autoitscript.com/autoit3/
http://phrogz.net/ProgrammingRuby/win32.html

=======
gem install watir
regsvr32 C:\ruby\lib\ruby\gems\1.8\gems\watir-1.4.1\watir\AutoItX3.dll
irb
require 'rubygems'
require 'win32ole'
a = WIN32OLE.new("AutoItX3.Control")
a.mousemove(100, 100)
a.mouseclick
=======

regsvr32 C:\ruby\lib\ruby\gems\1.8\gems\watir-1.4.1\watir\AutoItX3.dll
irb
require 'win32ole'
a = WIN32OLE.new("AutoItX3.Control")
a.ole_methods

http://actsasbuffoon.wordpress.com/2008/12/30/introduction-to-autoitx3/
http://rubywithwatir.blogspot.com/
http://rpgmakerxp.frbb.net/apprendre-le-ruby-f33/les-apis-windows-t557.htm
http://www.rubycentral.com/book/win32.html


#system system( aCmd [, args ]* ) -> true or false
#Executes aCmd in a subshell, return true/false A detailed error code $?. Kernel::exec on page 415.
system("echo *")
system("echo", "*")
OU
exec( command [, args ])
Quote spéciale "7"
puts `ls`
puts %x{ls}


require 'rubygems'
require 'win32ole'

begin
autoIt = WIN32OLE.new("AutoItX3.Control")
rescue
#marche pas : démarrez>exécuter... ou cmd ...
#register dll
path = "D:\\eclipse\\ruby\\lib\\ruby\\gems\\1.8\\gems\\watir-1.6.2\\lib\\watir\\"
#/s silent
result = system "regsvr32 /s #{path}AutoItX3.dll"
if !result
puts "(E) Vérifier le chemin de la dll AutoIt"
puts "(E) ou exécuter (Démarrez>Exécuter) taper \"regsvr32 /s AutoItX3.dll\""
end
autoIt = WIN32OLE.new("AutoItX3.Control")
end

autoIt.mousemove(100, 100)
autoIt.mouseclick

===
Il existe un module aussi très intéressant concernant le remplissage de formulaire web !
Par exemple pour automatiser l'envoi de vos superbes photo de vacances sur Picasa, vous connecter à votre boîte mail, ou remplir un formulaire pour créer un ticket d'anomalie...
>$ gem install mechanize

[Doc] [test]

lundi 21 février 2011

Ruby and Watir

Cela fait un moment que je ne touche plus à Ruby. Geek or not on m'a mit au défi et j'y ai répondu ; oui ma popularité n'est peut être pas des meilleurs, m'ont dit mes amis ; alors lancé sur un site "communautaire" ou chaque profil visité reçoit des points, pareil pour les mails etc. Et là je me sens comme Mark Zuckerberg à qui on donne un jouet. Et c'est parti, petit script d'automatisation sur le navigateur, qui va visiter toutes les pages possibles (plus on visite et plus on a de chance d'être visité à son tour), et après quelques affinages me voilà en tête du classement à près de 10 fois plus de points, sans passer une seule minute sur ce site, la grande classe :)
Bon bah maintenant je ne sais pas quoi faire de ses 40 000 images, peut être devrais-je trouver un script de morphing/d'analyse de visage et l'affiner pour mes recherches hors cadre du défi ! O-D

Petit script Ruby réalisé avec Watir ; c'est vraiment sympa pour automatiser des tâches sur le web, comme publier des photos, des news sur un blog, tester une application etc.

Watir en quelques commandes

Il existe d'autres solutions plus facile pour les petits besoins - PlugIn Firefox iMacros - en fait partie. Je vous laisse lire ce petit article intéressant.