1. Dashboard
  2. Mitglieder
    1. Letzte Aktivitäten
    2. Benutzer online
    3. Team
    4. Mitgliedersuche
  3. Forenregeln
  4. Forum
    1. Unerledigte Themen
  • Anmelden
  • Registrieren
  • Suche
Alles
  • Alles
  • Artikel
  • Seiten
  • Forum
  • Erweiterte Suche
  1. AutoIt.de - Das deutschsprachige Forum.
  2. Mitglieder
  3. Maximus1

Beiträge von Maximus1

  • Bilder laden von tmdb

    • Maximus1
    • 25. Dezember 2010 um 10:22

    für die media center erweiterung Mediabrowser habe ich letzten sommer mal ein tool geschrieben mit dem man die Bilder von schauspielern laden kann und diese dann in ordnern mit dem jeweilen schauspielernamen gespeichert werden.

    da jeder schauspieler dort eine nummer hat, werden die nummern der schauspieler zwischen 2 strings gesetzt und daraus entsteht dann die bildadresse.
    sollte kein bild der nummer zugewiesen worden sein, wird kein ordner erstellt und mit der nächsten nummer weitergemacht.

    viel spass damit.


    [autoit]

    #include <String.au3>
    #include <WindowsConstants.au3>
    #include <GUIConstants.au3>

    [/autoit][autoit][/autoit][autoit]

    Global $dir, $cNummer, $cActor, $bStart
    Global $sFile = "test.opt" ;das file mit der nummer des letzten actors der abgearbeitet wurde
    Global $nLastCompleted = IniRead($sFile,"Progress","LastCompleted",1)
    Global $dir = IniRead($sFile,"Data","Folder","NotFound")&"\"

    [/autoit][autoit][/autoit][autoit]

    Opt("GUIOnEventMode", 1) ;Wechsle in den OnEvent Modus

    [/autoit][autoit][/autoit][autoit]

    GUICreate("TMDB Actor Loader", 200, 90, 192, 124, -1, BitOR($WS_EX_WINDOWEDGE,$WS_EX_CONTEXTHELP))
    GUISetIcon("C:\Windows\System32\shell32.dll", -44)
    GUICtrlCreateLabel("Nummer", 10, 10, 43, 17)
    $cNummer = GUICtrlCreateLabel("", 100, 8, 100, 17)
    GUICtrlCreateLabel("Actor", 10, 35, 43, 17)
    $cActor = GUICtrlCreateLabel("", 100, 35, 100, 17)
    GUICtrlCreateButton("Folder", 115, 55, 60)
    GUICtrlSetOnEvent(-1, "Folder")
    $cStart = GUICtrlCreateButton("Start", 25, 55, 60) ;create start button
    GUICtrlSetOnEvent($cStart, "Start") ;start event freigeben
    If Not StringInStr(FileGetAttrib($dir),"D") Then GUICtrlSetState($cStart,$GUI_DISABLE) ;disable the start button if no valid path is loaded

    [/autoit][autoit][/autoit][autoit][/autoit][autoit]

    GUISetOnEvent($GUI_EVENT_CLOSE, "CLOSEClicked")
    GUISetState(@SW_SHOW) ;GUI anzeigen

    [/autoit][autoit][/autoit][autoit]

    ;~ mach erstmal nix ausser warten
    While 1
    Sleep(1)
    If $bStart Then
    _Run($nLastCompleted)
    IniWrite($sFile, "Progress", "LastCompleted", $nLastCompleted)
    $nLastCompleted += 1
    EndIf
    WEnd

    [/autoit][autoit][/autoit][autoit]

    Func start()
    $bStart = Not $bStart
    If $bStart Then
    GUICtrlSetData(@GUI_CtrlId,"Stop")
    Else
    GUICtrlSetData(@GUI_CtrlId,"Start")
    EndIf
    EndFunc

    [/autoit][autoit][/autoit][autoit]

    Func _run($nActor)
    Local $sSource, $sName, $sImageUrl
    Local $sNameLeft = "<h2>" ;linker string beim actorname
    Local $sNameRight = "</h2>" ;rechter string beim actorname
    Local $sImageLeft = "http://hwcdn.themoviedb.org/profiles/" ;linker string beim bilderdownload
    Local $sFileName = "\folder.jpg"

    [/autoit][autoit][/autoit][autoit]

    $sSource = BinaryToString(InetRead("http://www.themoviedb.org/person/" & $nActor))

    [/autoit][autoit][/autoit][autoit]

    $sName = _StringBetween($sSource, $sNameLeft, $sNameRight) ;actorname auslesen
    If @error Then Return ;the old error function caused an infinite loop leading to a stack overflow error.

    GUICtrlSetData($cNummer, $nActor) ;actornummer in GUI schreiben
    GUICtrlSetData($cActor, $sName[0]) ;actorname in GUI schreiben
    If FileExists($dir & $sName[0]) Then Return
    $sImageUrl = _StringBetween($sSource, $sImageLeft, '"') ;teil des links für das bild auslesen
    If @error Then Return

    DirCreate($dir & $sName[0])
    InetGet($sImageLeft & $sImageUrl[0], $dir & $sName[0] & $sFileName,0,1) ;lade bild in den dateispeicherort
    EndFunc

    [/autoit][autoit][/autoit][autoit]

    ;~ Speicherort festlegen
    Func Folder()
    Do
    $dir=FileSelectFolder("Choose a folder.", "",1) ;This will repeat untill a valid folder is chosen
    Until StringInStr(FileGetAttrib($dir),"D")
    IniWrite($sFile, "Data", "Folder", $dir)
    GUICtrlCreateButton("OK", 25, 55, 60) ;ok button erstellen
    GUICtrlSetOnEvent(-1, "Start") ;start event freigeben
    $dir &= "\"
    EndFunc

    [/autoit][autoit][/autoit][autoit]

    ;~ mach das fenster zu es zieht
    Func CLOSEClicked() ;geht nur wenn keine andere funktion arbeitet
    Exit
    EndFunc

    [/autoit]
  • zahlen vergleichen

    • Maximus1
    • 25. Dezember 2010 um 02:27

    auch dir autobert frohe weihnachten und ein danke für die hilfe.

    und danke das du mir das mit dem umwandeln erklärt hast. den verdacht hatte ich schon, bin aber mit "number" nicht weiter gekommen.

  • zahlen vergleichen

    • Maximus1
    • 25. Dezember 2010 um 02:17

    perfekt :thumbup:

    danke

  • zahlen vergleichen

    • Maximus1
    • 25. Dezember 2010 um 01:57

    hi,
    ich will von einer seite zahlen einlesen lassen und die niedrigere soll genommen werden.
    solange es sich um einstellige zahlen handelt ist auch alles toll, sobald aber die eine einstellig und die andere zweistellig ist, kommt alles durcheinander.
    hat einer eine idee warum?

    [autoit]

    _IELoadWait ($oIE)
    $sHTML = _IEDocReadHTML ($oIE)
    $source1 = _StringBetween($sHTML, $pleft1,$pright1)
    If Not @error Then
    If $source1[1] < $source1[0] Then ;abfrage welche nummer kleiner ist. manchmal ist [1] nicht vorhanden
    $gebpreis = $source1[1]
    Else
    $gebpreis = $source1[0]
    EndIf
    Else
    MsgBox(0,"","fehler nicht gefunden")
    EndIf

    [/autoit]

Spenden

Jeder Euro hilft uns, Euch zu helfen.

Download

AutoIt Tutorial
AutoIt Buch
Onlinehilfe
AutoIt Entwickler
  1. Datenschutzerklärung
  2. Impressum
  3. Shoutbox-Archiv
Community-Software: WoltLab Suite™