Was ist der beste Weg, um Web-Scripting / Web-Makros zu machen?
Ich versuche zu rationalisieren einige unserer Aufgaben an meinem Arbeitsplatz, und es scheint, dass ziemlich viel von unsere Entwickler viel Zeit damit verbracht, semi-mechanische arbeiten im web (insbesondere Bearbeitung von online-Shops, web-basierte Schnittstellen). Als solche habe ich Sie in einige Lösungen, die es ermöglichen, diese Aufgaben zu erledigen, die von Skripts, da ich vermute, dass könnte uns retten sehr wenig Zeit pro Aufgabe. So, bevor ich begann zu Graben in einem dieser, ich wollte Fragen, ob das Stack-Overflow-Gemeinschaft hatte keine Empfehlungen, über die web-Skript - /makro-Lösung wäre die beste.
Hier sind die Anforderungen:
- Muss in der Lage sein, um die Interaktion mit web-Formularen, (nicht nur das herunterladen einer Seite und scharren die Datei muss das script edit-Steuerelemente in einem web-Formular und senden Sie dann das Formular)
- Die Formen, die wir haben, zu Bearbeiten sind sichere Formen, so der scripting-Lösung muss in der Lage sein, damit umzugehen (dh es ist von keinem nutzen für uns zu haben, eine unglaublich leistungsfähige Script-Lösung, wenn ein Mensch da sitzen und gucken und manuell neu einloggen alle paar Minuten)
- Es wäre wirklich, wirklich, wirklich besser, wenn Sie Lesen könnten, lokale Dateien, und führen Sie einige grundlegende string-Austausch/manipulation (z.B. wäre es schön, eine Liste von Variablen oder einige HTML-code in eine text-Datei und dann das script ersetzen, das token "STORENAME" mit diesem bestimmten Shop ' s Namen, bevor es fügt den code in das Formular)
Hier sind die scripting-Lösungen, die auf meinem radar bisher (ich habe nicht wirklich sah in diesen, habe ich zwar schon gespielt, um mit Chickenfoot):
- Chickenfoot
- iMacros für Firefox
- libwww-perl
- libwww für unix und C (während der Suche nach libwww von perl stieß ich auf diese, die ich nicht kannte existierte bis jetzt)
- eine eher "Allgemeine" makro-Lösung wie AutoHotKey
Hat hier jemand auf Stack Overflow versucht, irgendwelche Lösungen? Wenn ja, was haben Sie mögen oder nicht mögen über Sie? Kann jemand empfehlen, eine, die nicht auf der Liste? (Dies ist keineswegs eine ausschließliche oder abschließende Liste). Ich würde wirklich gerne automatisieren viele unserer mechanischen Prozesse, und ich hoffe, dass die Stack-Overflow-community kann uns helfen, so können wir hoffentlich vermeiden, dass ein Großteil der geisttötende Teil der Arbeit :).
edit: Re: Plattform - haben Wir in Erster Linie WindowsXP-terminals zu arbeiten, aber 1) haben wir ein paar Mac-test-PCs, also OS X ist eine praktikable option, und 2) wenn es bedeuten würde, die Automatisierung eine Menge von diesen Aufgaben erstelle ich eine Linux-box, wenn das notwendig ist. Also die Plattform ist so ziemlich ein nicht-Thema.
InformationsquelleAutor der Frage Whisker | 2008-09-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Eine weitere option ist die Verwendung AutoIT + Firefox + mozrepl + FF.au3. Das ist mächtig, wie AutoIT funktioniert außerhalb des Browsers (es ist ein fantastisches tool zur Automatisierung in sich selbst), so können Sie arbeiten durch die Einreichung mehrerer browser-Formulare ohne Kontext. Dann die FF.au3-Skript können Sie einfach Steuern Sie Firefox über AutoIT3.
InformationsquelleAutor der Antwort Alex Angas
Ich bin ein großer fan von Selen
http://www.seleniumhq.com
entworfen, um automatisierte browser-Tests, wenn auch mit scripting-Unterstützung (mehrere Sprachen) Sie können die design-makro-Vorlagen, Formulare ausfüllen und solche basierend auf Variablen
außerdem: wer weiß ein gutes makro, das funktioniert mit Flash?? Scheint nicht javascript ist in der Lage, die Grenze zu überschreiten
InformationsquelleAutor der Antwort Alvin
iMacros für Firefox ist kostenlos und es ist alles, was Sie brauchen! Es automatisiert alle browser-Aktivität und funktioniert einfach! Es können auch lese - /Schreibzugriff auf externe Daten Formulare ausfüllen und viele, viele mehr. Ich bin großer fan von diesem Firefox add-on!
InformationsquelleAutor der Antwort Bestmacros
Ich mag die watir framework (ruby) -- programmierbare, einfach, benutzt den IE zu automatisieren des Web (und so erhalten Sie echte browser-Verhalten). Natürlich, es ist nur für Windows-Sie hat nicht angegeben, ob das ist, was Sie verwenden.
Haben wir genutzt, watir zu automatisieren unsere tests eine webapp, und wir sind sehr zufrieden.
InformationsquelleAutor der Antwort Asaf Bartov
Ein paar Vorschläge:
Edit: ich gehe davon aus, dass diese handeln würde, die auf web-Seiten mit den Daten, die Sie übermitteln wollen, für die Formen.
InformationsquelleAutor der Antwort Sam Hasler
@Asaf Bartov, tatsächlich, Watir ist nicht nur für Windows. Es gibt auch FireWatir, das funktioniert auf Windows, Linux und Mac, und SafariWatir, das funktioniert auf dem Mac.
http://wtr.rubyforge.org/
http://wiki.openqa.org/display/WTR/FireWatir
http://safariwatir.rubyforge.org/
InformationsquelleAutor der Antwort Željko Filipin
Ich bin eigentlich ein großer fan von Chickenfoot, das ich angefangen habe mit vor kurzem eine Menge zu bieten Skripting-Fähigkeiten für Zotero, ein weiteres Firefox-Erweiterung.
InformationsquelleAutor der Antwort Raymond Yee
Verwenden:
Firefox + iMacros zu Holen:
Gehen Sie zu der Seite, die Sie mögen (e.g yahoo.com), bringen iMacro im Fokus, hit und Suche für
einige text. Wenn die erste Seite zeigt, Speichern Sie die Seite in eine Datei.
Jetzt haben Sie eine Seite, die Sie wollte.
Sie fertig sind, Holen an diesem Punkt.
Speichern Sie das makro und geben ihm einen Namen.
Das nächste mal können Sie einfach führen Sie das makro, das Sie gerade gespeichert haben.
Sie reinigen Sie dann den html-code, den Sie bekam durch die Nutzung dieser:
Jetzt haben Sie eine saubere html-Seite mit einer Zeile, eine lange.
Jetzt können Sie schneiden und schneiden, wie Sie möchten, indem Sie mithilfe von regEx.
Was Sie wissen sollten:
Sie können das makro starten im firefox über einen cronjob (Kommandozeile) wenn Sie voller Automatisierung.
InformationsquelleAutor der Antwort un33k
Wenn Sie libwww-perl, dann nicht dort anhalten. Use WWW::Mechanize, das ist ein wrapper um die LWP, die die browser-Interaktion, die Sie wollen. Der Nachteil: Es funktioniert nicht mit JavaScript (noch) nicht.
WWW::Mechanize-Startseite
InformationsquelleAutor der Antwort Andy Lester
verwenden wir iMacros tool, das Sie erwähnt mit gutem Erfolg:
Firefox + iMacros
Beachten Sie, dass es kommt auch als freies IE-addon! Die große Sache über dieses ist, dass genau die gleichen Makros funktionieren in beiden Browsern. IMHO sehr nützlich für schnelle und einfache web-Tests und Allgemeine web-Automatisierung.
Tim
InformationsquelleAutor der Antwort
mein Eindruck von IMacros ist Sie bezahlen müssen zu entsperren, eine Menge goodies, und so ging ich mit Chickenfoot. Leider ist die Chickenfoot-mailing-Liste ist sehr ruhig in letzter Zeit, also bin nicht zuversichtlich, was seine Zukunft...
InformationsquelleAutor der Antwort hoju
WatiN.net-version von Watir. Ich mag es sehr.
InformationsquelleAutor der Antwort Peter Long
Ich bin mit iMacro/.net für eine Daten-Extraktion-Projekt. Ich mag die Leichtigkeit von Skripten für iMacros, das ist wichtig, da die Anwendung kann bis zu 60+ websites zum extrahieren von Daten aus. Für dieses Projekt werden die overhead-Kosten für den Betrieb von iMacros ist es Wert gerettet Entwicklung Zeit. Es ist nicht die ideale Lösung, aber es ist ein Weg, um eine Schnittstelle mit einem anderen website-Daten, die annehmen, dass Sie nicht das richtige interface. Das nette Teil ist, dass ich habe eine kleine server-cluster von iMacros Schaber, um zu helfen verteilen die Last. Jetzt können Benutzer auf die Anwendung zugreifen-Server über eine website für adhoc-Anfragen, aber irgendwann würde ich es mögen, sich zu etwas mehr gestreamt Linie.
InformationsquelleAutor der Antwort Kevin
Gibt es mehrere Optionen für python:
Hier ein kurze und klare blog-post (obwohl etwas veraltet) zu vergleichen, wie das gleiche einfache Aufgabe kann mit verschiedenen libs:
http://blog.spritecloud.com/2010/01/posting-forms-with-python/
Beachten Sie, dass
Clientform
auch erwähnt, es ist Teil mechanisieren heute.InformationsquelleAutor der Antwort Antony Hatchkins
Können Sie erreichen dies, indem Sie Firefox plugin iMacro und Notepad++ Makro-Funktion.
Gibt es ein tutorial, Lesen Sie in meinem blog:
http://xianlin.wordpress.com/2014/02/05/how-to-use-iopus-imacros-notepad-web/
Sollten Sie in der Lage sein, ähnliche Aufgabe mithilfe der Methode, die ich beschrieben habe, in diesem blog.
InformationsquelleAutor der Antwort Xianlin