Beiträge von Bernd Albrecht

    Hallo Leute,
    ich habe folgendes Anliegen und hoffe das man mir helfen kann. Ich habs vorher selbst versucht, ich kamm bisher aber nicht wirklich weit.
    Ich möchte ein programm Schreiben, welches Designs auf einer Print on Demand Seite hochläd. ( in meinem fall: Spredshirt.de). Meines Wissens nach wird dieses nicht explicit in den AGB´s von Spreadshirt verboten. Die Forum "Verantwortlichen" können aber auch gerne selbst schauen.

    Ich möchte, das das Programm ( AutoIt) eine Schleife 50 Mal ausführt und bei jeder Ausführung bestimmte Variablen um einen bestimmten Wert erhöht. Vorher ließt AutoIt eine Excel tabelle aus, um aus diesem Text zu verwenden.
    Ich hatte etwas gelesen wie von For-Variablen, konnte es bsiher aber nicht anwenden.

    Ich habe mal meine aktuelle Function stark verkürzt und vereinfacht. Meine aktuelle Function klappt zwar, habe sie aber bisher nur für 10 "Schleifen" manuell geschrieben, wobei ich jede "Variable" manuell ändern musste:

    "
    ;Liest Exel aus ( unwichtig)

    #include <Excel.au3>

    Local $oExcel_1 = _Excel_Open()

    Local $var = "C:\Users\xxxxxx\Desktop\Tester.xlsx"; Excel Tabelle

    Local $oWorkbook = _Excel_BookOpen($oExcel_1,$var)

    WinActivate("Test - Microsoft Excel")


    Local $_read1 = _Excel_RangeRead($oWorkbook, Default , "D5")

    ...

    Local $_read570 = _Excel_RangeRead($oWorkbook, Default , "E29")



    ;der eigentlische Prozess den ich x-mal wiederholen will


    Func T-Shirt Design hochladen, für 50 x Wiederholen ( 50 Designs) ( Design 1)

    ShellExecute("https://partner.spreadshirt.com/designs")

    sleep(500)

    WinWaitActive("Spreadshirt - Mozilla Firefox")

    sleep(2500)

    ...

    send("{RIGHT}") ; Variable 1, soll nach jeder Wiederholung 1 x mehr gedrückt werden´; bspw. bei der 6 Wiederholung soll an dieser Stelle 6 x nach "rechts" gedrückt werden


    send($_read41) ; Variable 2, soll bei der Wiederholung um 1 erhöht werden ( read41 ;read42 ; read43 ;...) ; bspw. bei der 5 Wiederholung sollte an dieser Stelle "send($_read45)" stehen

    sleep(2000)

    ...

    send($_read281) ;Variable 3, soll bei jeder Wiederholung um 10 erhöht werden ( read281; read291; read301;....)....

    sleep(2000)

    ...

    send($_read171) ; Variable 60; soll bei der Wiederholung um 5 erhöht werden....

    sleep(10500)


    WinClose("Spreadshirt - Mozilla Firefox", "")

    sleep(3000)


    EndFunc


    Func ( Design 2)


    Function für Design 1 soll wiederholt werden mit den Werten für die Variable in diesem Fall...., also jeweils um 1, um 10 , 3.... erhöht


    EndFunc

    "
    Kann mir hier jemand vielleicht weiterhelfen. Ich wüsste gerne, wie ich die ($_read171)s als Variablen in eine Schleife packen kann.

    Ich danke euch im vorraus. Im Screenshot ist das ganze übersichtlicher.


    Gruß Bernd


    Ein Verbot, Designs mittels Automatisierung der Upload-Seite hochzuladen, konnte ich so nicht finden. Das ist aber nur meine private Interpretation, keinesfalls eine rechtsverbindliche Bewertung !

    Ich hatte auch nix diesbezüglich gefunden, die Betreiber sehen dies aber nicht gerne, besonders wenn man damit übertreibt.

    Um geneigten Helfern eine Vorstellung des Ablaufes zu geben, wäre folgendes sinnvoll :

    Ich danke euch für eure hilfe bisher, ich komm noch aktuell zurecht, wenn ich hilfe brauchen sollte werde ich mich vorerst selbst versuchen schlau zu machen, ansonsten werde ich hier im Forum schreiben.

    Ich danke euch für eure hilfreichen Antworten Musashi und water .
    Ich werde demnächst das uploaden auf T-shirt Plattformen automatisieren. Dabei möchte ich es mir so leicht wie möglich machen, wenn ich codes ändern muss. Die Betreiber der T-shirt PLattform Seiten, sehen es nicht gern, das "Bots" die Designs hochladen, dementsprechend gibt es immer wieder änderungen an den Websiten. Wenn dann demnächst wieder bspw. 2 Mausklicks sich auf der Website verädnert haben, würde ich es gern vermeiden, diese 2 Codes einzeln für das gesamte Skript ändern zu müssen. Auto it markiert öfters bspw. gleiche sleep Zahlen in den klammmern mit grün, ich weis aber nicht , wie ich das dann auch auf einen Schlag für alle grün markierten stellen verändern kann. Bisher bin ich da nicht weiter gekommen. Ich bin im Umgang bei Auto it Laie und finde einige Dinge ziemlich kompliziert. Mit Excel kann ich gut umgeben und habe zusätzlich, wie ich meine, ein gewisses mathematisches verständniss. Bei Excel gestalltet sich das verändern von mehrere zellen für mich einfacher.

    Die bei jedem Durchlauf benötigten Werte kann man z.B. in einem Array ablegen. Bei Dir wären das wohl die jeweiligen XY-Werte für die Mausklicks, oder?


    Arrays könnten mir vielleicht weiterhelfen, ich werde mich in den nächsten Tagen weiter da rein lesen.


    RunWait(@AutoItExe & ' /AutoIt3ExecuteLine ' & $sCommand) z

    Das werde ich mir auch anschauen. Wieso ist wäre dies alles andere als Sinnvoll? Ist diese Methode fehlerbehaftet oder arbeitet dadurch auoit sehr langsam?




    Gruß Bernd

    wenn ich bei autoit eine befehlsreihe, welche beispielsweise 200 mal wiederholt mit jeweils verschiedenen Mausklicks, verädern will oder muss, sodann muss ich bei autoit es einmal verändern und dann 200 mal löschen und einfügen. Wenn das mit exel klapen würde, sodann müsste ich dies nur ein mal bei exel verändern und es wäre für alle 200 mit einem schlag übernommen, da überall bspw. $_read1 stehen würde.
    Weiterhin hätte dies viele weitere vorteile.
    Oder gibt es diese Funktion auch bei Auto it?

    Hallo Leute ich habe folgendes anliegen:
    Ich würde gerne Auto it laufen lassen und eine Excel Datei auslesen lassen. Sodann hätte ich gern, das Auto it von der Zelle A1, welches es gelesen hat, den Code ausführt welchen ich vorher dort in die Excel Datei reingeschrieben habe.
    Bisher bei Auto it:

    #include <Excel.au3>

    Local $oExcel_1 = _Excel_Open()

    Local $var = "C:\Users\.....\Desktop\pool.xlsx"

    Local $oWorkbook = _Excel_BookOpen($oExcel_1,$var)

    WinActivate("Test - Microsoft Excel")



    ;Liest EIgenschaften/Vorlage

    Local $_read1 = _Excel_RangeRead($oWorkbook, Default , "A1")

    Local $_read2 = _Excel_RangeRead($oWorkbook, Default , "D6")

    Local $_read3 = _Excel_RangeRead($oWorkbook, Default , "D7")


    $_read1

    _____________________________________________________________________________________________

    In der Excel datei in Zelle A1 steht folgender Code:

    ShellExecute("https://google.de")

    sleep(500)

    WinWaitActive("Google - Mozilla Firefox")

    sleep(2500)

    WinSetState("Google - Mozilla Firefox", "", @SW_MAXIMIZE)

    sleep(5000)

    MouseClick("left" , 1059,305 , 1)

    sleep(3000)

    MouseClick("left" , 957,518 , 1)

    sleep(3000)

    WinSetState("Datei hochladen", "", @SW_MAXIMIZE)

    sleep(7000)

    ...


    ______________________________________________________________________________________________


    Auto it führt aber das Skript nicht aus, und zeigt eine rote Fehlermeldung bei $_read1: ....statment cannot be just an expression

    Ist das Überhaupt möglich, das was ich vor habe? Könnt Ihr mir da helfen?

    Ich danke euch im vorraus.

    Gruß Bernd

    Hallo Leute,

    ich schreibe aktuell ein Script welches für mich sehr lang wird. Zur besseren Übersicht würde ich gerne das Skript in ca. 10 teile teilen wollen und diese auch verkleinern wollen. Sowie bei eines Func-endFunc funktion. Wenn man auf das plus drückt öffnet sich mehr...
    Wie kann ich dieses auf mein Skript anwenden ohne eine Func-Endfunc?

    Danke im vorraus

    Gurß Bernd

    Vielen Dank für die Antwort,
    ich habe mich am IE.au3 versucht: Onlinie hatte ich keine wirkliche Anleitung gefunden diesbezüglich. Das Formular in IE geht auf, wenn ich aber die Spalten ausfülle und auf submit drücke, kommt eine fehlermeldung. Außerdem wüsste ich garnicht wie es dann weitergehen sollte. ( was ich dan tun sollte...) Woher könnte man den die Bezeichnungen der einzelenen "Koordinaten" der Buttons im IE feststellen?
    ( So wie bei einer Exel Funktion bei Auto it; Bsp.:

    Local $_read1 = _Excel_RangeRead($oWorkbook, Default , "B3")
    Local $_read2 = _Excel_RangeRead($oWorkbook, Default , "C3")
    Local $_read3 = _Excel_RangeRead($oWorkbook, Default , "D3")

    WinActivate("Spreadshirt - Google Chrome")

    MouseClick("left" , Koordinaten des Titel Fenster , 3)
    sleep(50)
    send("{backspace}")

    sleep(50)
    send($_read1)
    sleep(150)
    send("{tab}")
    sleep(150)
    send($_read2))


    Gibt es den keine einfacherere Variante, dass Autoit und ein Webbrowser zusammenarbeiten?


    Gruß Bernd

    Hallo Leute,

    ich bin Amateuer in diesen Themengebieten und suche daher Hilfe. Ich habe folgende Anliegen:


    1.

    Ich möchte über Autoit Browserelemente von Mozilla Firefox ( oder Chrome oder Interent Explorer) ansteuern und anklicken lassen. Dieses möchte ich nicht über Mausklicks machen. Gibt es hierfür nicht eine weitesgehend einfache Methode? Ich habe aktuell auf Fire Fox die Erweiterung: web developer installiert. Könnte ich über diese Formulare mein Ziel erreichen?

    Bsp. Ich möchte das Autoit eine Internetseite öffnet und dann ganz unten auf Kontakte klickt.



    2.

    Ich möchte über Autoit Ordner auf Windows öffnen, ohne diese Anklicken zu müssen. Kann man bei Autoit nicht einen Code eingeben durch welchen sich dann ein bestimmter Ordner auf dem Rechner öffnet?

    Ich danke euch im vorraus für eure Antworten und Bemühungen

    Ich frage da ich ein Prorgamm für automatisches Hochladen von Designs auf Print on Demand Seiten schreiben will. Ich bin neu in diesem Geschäft und habe gehört, dass man das Hochladen Prgrammen überlassen kann.


    Gruß