Beiträge von stef26

    Vielleicht weil ich mir einen Song ansehen möchte, der GEMA technisch nur auf Youtube gespielt werden darf?

    Über YouTube direkt wird dieser ganz normal gespielt. Nur wenn es eingebettet ist, dann bringt er mir die Meldung.


    Auf jeden fall cool gemacht.

    Wieso kopfschütteln, würdest du das heute mit mehr Erfahrung anders machen?

    WOW das ist mal ein Code. Hut ab da hast du ja damals jede menge Arbeit rein gesteckt.


    Leider bringt wie du schon vermutet hast Youtube die Fehlermeldung

    We're sorry...

    ... but your computer or network may be sending automated queries. To protect our users, we can't process your request right now.


    Ich vermute mal das lässt Youtube nicht mehr zu. Denke nicht dass man dies umgehen kann...


    Danke auf jeden Fall für deine Rückmeldung.


    Cooles Programm wenn es Youtube zulassen würde


    Liebe Grüsse

    Stefan

    Guten Morgen,

    ich kenne mich aktuell nicht wirklich mit AutoIt aus. Würde das aber gerne lernen. Mir schwirrt da was im Kopf umher was ich gerne mit AutIt machen würde. Dazu bräuchte ich bei einem Thema eure Hilfe.

    Ist es möglich (und hält sich der Programieraufwand für Hilfe und Unterstützung im Rahmen) dass man in AutoIt ein Pulldown Menü anlegt in der Youtube Videos gelistet sind.

    Ich hätte gerne die Möglichkeit diesen zu steuern. D.h Video stoppen /starten. Was ich dann bräuchte, wäre zusätzlich die aktuell gespielte Zeit des Videos (am besten in einer Variable)

    Wenn dass möglich wäre würde ich gerne AutoIt lernen und mein Programm was mich nicht loslässt versuchen zu realisieren.


    Ich habe was gefunden wie man es mit JavaSkript/HTML schon gelöst hat. (siehe Anhang)

    Lässt sich sowas überhaupt mit AutoIt realisieren?


    Liebe Grüße

    der ahnungslose Neuling Stefan

    Hallo alpines,

    den hab ich irgendwie gar nicht gelesen.

    Ich habs ausprobiert und was soll ich sagen

    :klatschen::klatschen::klatschen::klatschen::klatschen::klatschen::klatschen::klatschen::klatschen:

    Jippiiiiiii Es läuft es geht es arbeitet es funktioniert


    Ich bin so happy..


    Vieeeeeeeeelen Danke du hast mir den Abend gerettet !!!!!!!!!!!!!!!!!!!!!


    Danke Danke Danke


    Du bist großartig


    Danke Liebe Grüße

    Stefan

    Hallo Alpines,

    leider lässt sich der Code in Excel VBA nicht so einfach realisieren. Da ich auch von Excel VBA nicht gerade Profi bin, habe ich wie beim letzten mal das in ein Excel Forum gegeben mit der Bitte mir das zu übersetzen. Leider findet sich hier keiner, der sich da auskennt um das zu realisieren.

    Ich werde es vermutlich in Excel von Hand umstellen einstellen. Ist zwar nicht schön ist halt so.

    Vielleicht setze ich das mal in AutoIt um. Wäre für mich sehr interessant, da ich da bestimmt viel lernen kann.

    Dann würde ich mich bestimmt mal wieder melden.


    Wollte mich nur nochmal bei dir bedanken, auch wenn ich dieses mal leider nicht gelungen ist zum Erfolg zu kommen.


    Danke und liebe Grüße

    Stefan

    Hallo Alpines,

    vielen Dank wie machst du das in so kurzer Zeit?


    Ich befürchte das ich das nicht so einfach in Excel VBA rein bekomme.

    Ich hab das in ein Standardmodul kopiert. Und der Editor hat mir alles rot gekennzeichnet. Das heißt dass es das nicht kennt.

    Vermutlich muss ich die Variablen festlegen(Dim) dann würden vermutlich schon ein paar Sachen passen.

    Aber mit dem Rest...

    Ich befürchte dass da meine VBA Kenntnisse in Excel auch nicht mehr ausreichen.


    Gibt es evtl. jemanden, der das in Excel VBA übersetzen kann?


    Vielen Dank Alpines für deine Hilfe

    Ach ich hab die in eine Exe gepackt und mal laufen lassen. Leider bringt er mir da Fehlermeldungen?

    Hallo Alpines,

    ich könnte nochmal gut deine Hilfe gebrauchen. Ich habe mir den Link den du mir geschickt hast durchgelesen.

    Da meine Programmierfähigkeiten gleich 0 sind habe ich kein Wort verstanden was da geschrieben wurde.

    Ich habe versucht d


    Ich würde gerne beim Youtube Player an Wiedergabegeschwindigkeit (per Programm) einstellen können.

    Wärst du so nett und würdest mir das nochmal zeigen wie ich das funktioniert?


    Ich bin einfach zu blöd das umzusetzen....

    Sorry

    Stefan

    Hallo Kanashius,

    das wäre ja voll cool. Ich kenne mich nicht sonderlich gut aus, deshalb hab ich das mit Excel mal gestartet.

    Wunsch war schon immer, dass ich das irgendwie in AutiIT hin bekomme, würde ich aber vermutlich Jahre brauchen.


    Ich kann dir mal eine Beschreibung geben, was ich bisher in Excel gemacht habe und was ich noch machen wollte:


    Neues Lied in die DB aufnehmen:

    Ich hole mir aktuell aus meine Lieblings Musikvideos die URL

    Hole mir den passenden Liedtext in Englisch und Deutsch aus Songtexte / bzw. versuch die manuell zu übersetzen

    Jede Zeile eines Liedes bekommt eine fortlaufende Nummer

    Lasse das Video laufen. (Textzeile1 und 2 werden angezeigt.

    Ist Textzeile1 zu ende, dann wird die Youtubezeit in der Textzeile 2 gespeichert. (Textzeile 1 = immer 0)

    Nun wird Text 2 und 3 angezeigt usw. -> Ist das Video zu ende, habe ich zu jeder Textzeile den Startzeitpunkt, wann dieser eingeblendet werden soll.

    Verknüpfe die URL mit der Zeit.

    Zerlege jedes Wort des Texte in eine Wörterbuch DB und hänge dahinter die Startzeit URL+Startzeit


    Lieder abspielen:

    Dropdown aller aufgenommener Videos.

    Start Player, Start Texte, Synchronisiere Texte und Video


    Vokabeltraining: (funktioniert aktuell wegen diverser Änderungen nicht mehr/müsste ich anpassen)

    Alle im Wörterbuch aufgenommenen Wörter werden nach dem Zufallsprinzip aufgerufen.

    Dropdown der Übersetzungen

    Auswahl richtig oder falsch

    Falsch: Richtiges Wort wird angezeigt.

    Dropdown aller Lieder die dieses Wort enthalten.

    Auswahl Song -> Die Textzeile des Liedes wird gespielt


    Was habe ich noch nicht:

    Einstellungen YoutubePlayer , damit man verschiedene Geschwindigkeitsstufen einstellen kann.

    (Anfänger0,75;Lernmodus0,5,Standard 100%)

    Schwierigkeitslevel von Wörtern und Songs hinterlegen, so dass man mit einfachen Sogs/Wörter starten kann. (um nicht gleich die Lust zu verlieren)


    Was hatte ich noch vor:

    Vokabeltraining so anpassen, dass die Werte Falsch oder Richtig mit gespeichert werden, damit man dann sich dann auch mal nur die Fehlerhaften üben kann.

    Vokabeltraining: Aussprache des englischen Wortes sagen lassen (Würde in Excel eine richtige Herausforderung geworden)


    Ziel: Aus den Lieblingsliedern die englischen Vokabeln automatisch und ohne Stress lernen.



    Ich denke nicht dass man das übers Wochenende hin bekommt. Ich glaube aber auch, dass ich mit diesem Programm mein Englisch und das meiner Kinder (oh Gott was singen die für Sachen, haben aber auch erst jetzt in der Schule mit Englisch so richtig begonnen..(im Gegensatz zu mir)

    Ich könnte ein besseres Englisch (gut auch Deutsch :-)) gut gebrauchen …


    Wär auf jeden Fall ne tolle Sache


    Gruß

    Stefan

    Hallo Bitnugger,

    ich wusste bis gestern noch gar nicht was ein Bot sein soll. Habs gegoogelt :-)


    Also Ich arbeite aktuell an einem Exceltool. (Was ich evtl. mal wenn ich mit Autoit besser auskenne dort umsetzen möchte.)

    Es soll so etwas funktionieren wie Musixmatch.

    Videoplayer zeigt Video und ich bekomme den Englischen Text und den Deutschen Text. (aber das habe ich glaube ich schon alles mal geschrieben)

    Grund: Mein Englisch und das meiner Kinder zu verbessern.

    Hab schon einiges umsetzen können.

    Mein aktuelles vorhaben ist es die per Button in einer USERFORM die Geschwindigkeit des Videos anpassen zu können um so eine Art Lernmodus (Video läuft langsamer) umsetzen zu können.

    Problem an der Sache ist, dass der YoutubeVideoplayer den ich per Webbrowser in das UserForm gebracht habe.

    Dort habe ich natürlich immer die selbe Position. Aber der Youtube Player hat verschiedene Modi (Kinomodus usw.)

    Was noch viel schlimmer ist, ist die Tatsache, dass mit jedem Video das ebenfalls noch stark variieren kann. (Vermutlich das Videoformat)

    So dass ich weder mit der Position noch mit der Position aus einem Fenster das gelöst bekomme.

    Leider sind das auch keine Buttons die man irgendwie abgreifen kann, glaub ich. Und zu guter letzt verschwindet das Setup Zahnrad, wenn das Video nicht mit der Maus selektiert wird....

    Wenn ich es gar nicht hin bekomme, dann werde ich das manuell machen müssen. Was ich eigentlich vermeiden wollte. So bin ich eigentlich dann auch auf AutoIT gekommen.

    Ach ja mein Deutsch ist wirklich nicht das Beste.

    Ich vermute mal das wird sich auch nicht mehr ändern...

    ;(:D

    Gruß

    Stefan

    Hallo Autoiter,

    danke für die Rückmeldung. Leider läuft auch das mit aFiles anstelle Bitmaps bei mir auch nicht.

    Die DLL liegt im Ordner wo auch diese Test.au3 liegt.


    if $result[0]="0" then return 0

    if $result^ ERROR

    >Exit code: 1 Time: 4.364


    Könnte es sein, dass es spezielle Anforerungen an das gesuchte Bild gibt?


    Hmmm….


    Gruß

    Stefan

    Hallo Autoiter,

    sorry ich möchte hier niemanden zum Narren halten. War wirklich nicht meine Absicht.

    Mir geht es ja auch gar nicht um Geschwindigkeit, das ist nicht mein Problem.

    Mein Problem ist, dass der Code bei mir nicht läuft.

    Ich hatte ein png Bild in den Ordner Pics gemacht und dachte das er diesen Bildausschnitt auf dem Screem sucht und dessen Position dann drückt, was er bei mir nicht macht.

    Da ich völliger Anfänger bin verstehe ich den Code auch kaum. Nur so viel, dass ich gewusst habe, dass er von mir Bilder im OrdnerPics erwartet.

    Wie schon gesagt Zeit spielt keine Rolle Hauptsache er findet das Bild und clickt, da ich dass über mein Hauptprogramm (Excel) nicht hinbekomme würde ich für diesen Click das mit einer exe in Excel lösen.


    Problem: er clickt nicht oder findet das Bild nicht. Keine Errormeldung???


    Sorry nochmal falls das irgendwie falsch rüber gekommen sein sollte


    :)

    Stefan

    Hallo nochmal,

    jetzt glaub ich den richtigen Code gefunden zu haben.

    #include <ImageSearch.au3>

    #include <File.au3>

    #include <GDIPlus.au3>

    #include <Array.au3> ;just For debug



    Local $aFiles = _FileListToArray(@ScriptDir & "\Pics\", "*.png", 1, True) ;add your pictures in a folder

    If @error Then Exit

    _ArrayDisplay($aFiles) ;debug files

    ; Initialize GDI+ library

    _GDIPlus_Startup()



    Local $aBitmaps[$aFiles[0]]

    Local $hImage = 0


    For $i = 0 To UBound($aBitmaps) - 1

    $hImage = _GDIPlus_ImageLoadFromFile($aFiles[$i + 1])

    $aBitmaps[$i] = _GDIPlus_BitmapCreateHBITMAPFromBitmap($hImage)

    _GDIPlus_ImageDispose($hImage) ;Clean up resources

    Next



    Local $iX = 0

    Local $iY = 0

    Local $iResult = 0

    For $i = 0 To UBound($aBitmaps) - 1

    $iResult = _ImageSearch($aBitmaps[$i], 1, $iX, $iY, 20, 0)

    If $iResult Then

    MouseMove($iX, $iY)

    MouseClick("Left", $iX, $iY, 2)

    Else

    MsgBox(1, "Error", "Could not find image")

    EndIf

    Next


    Hab im Ordner Pics 2 Bilder (png) eingefügt. Die er vermutlich auch sucht, auch ne Tabelle aufmacht.

    Sonst nichts. Ich denke er findet die Bilder auf dem Screen nicht.

    Wer weiß an was das liegen könnte?


    LG

    Stefan

    Hallo Werty,

    mit der Hilfe komme ich leider nicht weiter.

    Hab folgenden Code gefunden.

    Allerdings dachte ich irgendeo einen Pfad und Bildname meines zu suchenden Bildes zu finden???

    #include-once

    ; ------------------------------------------------------------------------------

    ;

    ; AutoIt Version: 3.0

    ; Language: English

    ; Description: Functions that assist with Image Search

    ; Require that the ImageSearchDLL.dll be loadable

    ;

    ; ------------------------------------------------------------------------------


    ;===============================================================================

    ;

    ; Description: Find the position of an image on the desktop

    ; Syntax: _ImageSearchArea, _ImageSearch

    ; Parameter(s):

    ; $findImage - the image to locate on the desktop

    ; $tolerance - 0 for no tolerance (0-255). Needed when colors of

    ; image differ from desktop. e.g GIF

    ; $resultPosition - Set where the returned x,y location of the image is.

    ; 1 for centre of image, 0 for top left of image

    ; $x $y - Return the x and y location of the image

    ;

    ; Return Value(s): On Success - Returns 1

    ; On Failure - Returns 0

    ;

    ; Note: Use _ImageSearch to search the entire desktop, _ImageSearchArea to specify

    ; a desktop region to search

    ;

    ;===============================================================================

    Func _ImageSearch($findImage,$resultPosition,ByRef $x, ByRef $y,$tolerance, $HBMP=0)

    return _ImageSearchArea($findImage,$resultPosition,0,0,@DesktopWidth,@DesktopHeight,$x,$y,$tolerance,$HBMP)

    EndFunc


    Func _ImageSearchArea($findImage,$resultPosition,$x1,$y1,$right,$bottom,ByRef $x, ByRef $y, $tolerance,$HBMP=0)

    ;MsgBox(0,"asd","" & $x1 & " " & $y1 & " " & $right & " " & $bottom)

    if $tolerance>0 then $findImage = "*" & $tolerance & " " & $findImage

    If IsString($findImage) Then

    $result = DllCall("ImageSearchDLL.dll","str","ImageSearch","int",$x1,"int",$y1,"int",$right,"int",$bottom,"str",$findImage,"ptr",$HBMP)

    Else

    $result = DllCall("ImageSearchDLL.dll","str","ImageSearch","int",$x1,"int",$y1,"int",$right,"int",$bottom,"ptr",$findImage,"ptr",$HBMP)

    EndIf


    ; If error exit

    if $result[0]="0" then return 0


    ; Otherwise get the x,y location of the match and the size of the image to

    ; compute the centre of search

    $array = StringSplit($result[0],"|")


    $x=Int(Number($array[2]))

    $y=Int(Number($array[3]))

    if $resultPosition=1 then

    $x=$x + Int(Number($array[4])/2)

    $y=$y + Int(Number($array[5])/2)

    endif

    return 1

    EndFunc


    ;===============================================================================

    ;

    ; Description: Wait for a specified number of seconds for an image to appear

    ;

    ; Syntax: _WaitForImageSearch, _WaitForImagesSearch

    ; Parameter(s):

    ; $waitSecs - seconds to try and find the image

    ; $findImage - the image to locate on the desktop

    ; $tolerance - 0 for no tolerance (0-255). Needed when colors of

    ; image differ from desktop. e.g GIF

    ; $resultPosition - Set where the returned x,y location of the image is.

    ; 1 for centre of image, 0 for top left of image

    ; $x $y - Return the x and y location of the image

    ;

    ; Return Value(s): On Success - Returns 1

    ; On Failure - Returns 0

    ;

    ;

    ;===============================================================================

    Func _WaitForImageSearch($findImage,$waitSecs,$resultPosition,ByRef $x, ByRef $y,$tolerance,$HBMP=0)

    $waitSecs = $waitSecs * 1000

    $startTime=TimerInit()

    While TimerDiff($startTime) < $waitSecs

    sleep(100)

    $result=_ImageSearch($findImage,$resultPosition,$x, $y,$tolerance,$HBMP)

    if $result > 0 Then

    return 1

    EndIf

    WEnd

    return 0

    EndFunc


    ;===============================================================================

    ;

    ; Description: Wait for a specified number of seconds for any of a set of

    ; images to appear

    ;

    ; Syntax: _WaitForImagesSearch

    ; Parameter(s):

    ; $waitSecs - seconds to try and find the image

    ; $findImage - the ARRAY of images to locate on the desktop

    ; - ARRAY[0] is set to the number of images to loop through

    ; ARRAY[1] is the first image

    ; $tolerance - 0 for no tolerance (0-255). Needed when colors of

    ; image differ from desktop. e.g GIF

    ; $resultPosition - Set where the returned x,y location of the image is.

    ; 1 for centre of image, 0 for top left of image

    ; $x $y - Return the x and y location of the image

    ;

    ; Return Value(s): On Success - Returns the index of the successful find

    ; On Failure - Returns 0

    ;

    ;

    ;===============================================================================

    Func _WaitForImagesSearch($findImage,$waitSecs,$resultPosition,ByRef $x, ByRef $y,$tolerance,$HBMP=0)

    $waitSecs = $waitSecs * 1000

    $startTime=TimerInit()

    While TimerDiff($startTime) < $waitSecs

    for $i = 1 to $findImage[0]

    sleep(100)

    $result=_ImageSearch($findImage[$i],$resultPosition,$x, $y,$tolerance,$HBMP)

    if $result > 0 Then

    return $i

    EndIf

    Next

    WEnd

    return 0

    EndFunc



    Wer könnte mir kurz behilflich sein, damit ich verstehe wie ich das anzuwenden habe?

    Gruß

    Stefan

    Hallo Liebe Forumshelfer,

    ich hätte noch eine Frage.

    Ich habe ein Problem das ich hatte so gelöst, dass ich über AutoIt die angegebene Position drücke.

    Dies hat jedoch den Nachteil, wenn Fenster verschoben sind oder andere Bildschirmauflösung, dann drückt die Maus ins leere.

    Ich hab in einem Youtub Video gesehen, dass man auch ein Bild machen kann, welches dann gesucht wird und gedrückt werden kann.

    Ich habs versucht nachzumachen, hat blöderweise nicht geklappt.

    Kennt das von euch jemand und könnte jemand da ein Beispiel posten, ich weiß nicht was ich da damals falsch gemacht habe?


    Viele Grüße

    Stefan

    Hallo Bitnugger,

    danke für deine Rückmeldung.

    Das runterladen hab ich mich bisher nicht getraut.


    Ich werde versuchen das Tool was ich aktuell noch unter Excel laufen habe mal unter AutoIt umzusetzen.

    Dazu muss ich mir aber noch etliche Youtube Videos anschauen, bevor ich das starten kann.


    Vielen Dank auch für das Zeitermitteln, dass kann ich dann ganz bestimmt gut gebrauchen.


    Gruß

    Stefan