Online User ermitteln

  • Wie kann ich alles rausschneiden bis auf den unsernamen.
    also hieraus:

    Code
    <a href="index.php?page=User&amp;userID=525">Noobstyler</a>
    <a href="index.php?page=User&amp;userID=564">IceAngel</a>

    am besten so das es in ein array gespeichert wird.

    mfg

    Einmal editiert, zuletzt von K1773R (10. Juni 2009 um 20:31)

  • [autoit]

    #include <array.au3>
    $str = '<a href="index.php?page=User&amp;userID=525">Noobstyler</a>' & @CRLF & _
    '<a href="index.php?page=User&amp;userID=564">IceAngel</a>'
    $array = StringRegExp($str, 'userID=\d*">(.+)</a>', 3)
    _ArrayDisplay($array)

    [/autoit]
  • Hallo K1773R,

    Wie kann ich alles rausschneiden bis auf den unsernamen.
    also hieraus:

    Code
    <a href="index.php?page=User&amp;userID=525">Noobstyler</a>
    <a href="index.php?page=User&amp;userID=564">IceAngel</a>

    am besten so das es in ein array gespeichert wird.

    mfg

    [autoit]

    #include <array.au3>
    $str = '<a href="index.php?page=User&amp;userID=525">Noobstyler</a>' & @CRLF & _
    '<a href="index.php?page=User&amp;userID=564">IceAngel</a>'
    $array = StringRegExp($str, 'userID=\d*">(.+)</a>', 3)
    _ArrayDisplay($array)

    [/autoit]

    funzt super =)
    ich brauch des für die Wer ist online? Liste, nur da geht es ned =/
    also für hier: http://www.autoit.de/index.php?page=UsersOnline


    Da es in die beiden User aus deinem Post #1 in diesem Forum nicht gibt, kann ich nur sagen

    Zitat

    .
    blubbstar hat dir für deinen Codeschnipsel aus einer HTML-Seite die gewünschten Infos herausgefiltert, wenn du ihm Infos unterschlägst, brauchst du dich auch nicht wundern, wenn das Resultat nicht das gewünschte ist,

    mfg (Auto)Bert

  • die links waren aus meinem forum der wer ist online liste. die ist genau gleich wie hier.

  • Das sollte gehen ->

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>
    #include <INet.au3>
    #include <String.au3>

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

    $HTML = _InetgetSource("http://autoit.de/index.php?page=UsersOnline")
    $HTML = StringMid($HTML, StringInStr($HTML,"initList('yourbox'")+18)
    $HTML = StringMid($HTML, 1,StringInStr($HTML,"initList('useronlinebox'")-1)
    $HTML = _StringBetween($HTML, "<a", "/a>")
    $HTML = _ArrayToString($HTML, "",2)
    $HTML = _StringBetween($HTML, ">", "<")
    _ArrayDisplay($HTML)

    [/autoit]
  • Kla kommt da Schwachsinn raus, da das nach schema von autoit.de gemacht ist :P

    Probier mal das ->

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>
    #include <INet.au3>
    #include <String.au3>

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

    $HTML = _InetgetSource("http://forum-darkgamex.dyndns.org/index.php?page=UsersOnline")
    $HTML = StringMid($HTML, StringInStr($HTML,'<div class="userOnline">'))
    $HTML = StringMid($HTML, StringInStr($HTML,'<tbody>')+7)
    $HTML = StringMid($HTML, 1,StringInStr($HTML,'</tbody>')-1)
    $HTML = StringRegExpReplace($HTML,'<(td|a|tr|font).*?(>)','')
    $HTML = _StringBetween($HTML, '<p>', "</a>")
    While 1
    For $i = 0 To Ubound($HTML)-1
    If StringInstr($HTML[$i], "strong") Then
    $admin = StringRegExp($HTML[$i],"<strong>(.*?)</strong>",1)
    $HTML[$i] = $admin[0]
    EndIf
    If StringInstr($HTML[$i], "Startseite") Then
    _ArrayDelete($HTML, $i)
    ExitLoop
    EndIf
    If StringInStr($HTML[$i], "Heute") Then
    $HTML[$i] = StringRegExpReplace($HTML[$i],'Shoutbox','')
    $HTML[$i] = StringTrimLeft(StringRegExpReplace($HTML[$i],'(<).*?(>)',''),12)
    EndIf
    Next
    If $i = Ubound($HTML) Then Exitloop
    Wend
    _ArrayDisplay($HTML)

    [/autoit]
  • haut "fast" hin ^^
    bekomm noch bissel mist )=

    Spoiler anzeigen
  • Witzig.. bei mir klappts problemlos!

    Hier nochmal mit Rangunterscheidung:

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>
    #include <INet.au3>
    #include <String.au3>

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

    Local $z = 0

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

    $HTML = _InetgetSource("http://forum-darkgamex.dyndns.org/index.php?page=UsersOnline")
    $HTML = StringMid($HTML, StringInStr($HTML,'<div class="userOnline">'))
    $HTML = StringMid($HTML, StringInStr($HTML,'<tbody>')+7)
    $HTML = StringMid($HTML, 1,StringInStr($HTML,'</tbody>')-1)
    $HTML = StringRegExpReplace($HTML,'<(td|a|tr).*?(>)','')
    $HTML = _StringBetween($HTML, '<p>', "</a>")
    DIm $HTML2[Ubound($HTML)][2]
    For $i = 0 To Ubound($HTML)-1
    $HTML2[$i][0] = $HTML[$i]
    Next

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

    While 1
    For $i = $z To Ubound($HTML2)-1
    $z = $i
    If StringInstr($HTML2[$i][0], "strong") Then
    $mod = StringMid($HTML2[$i][0], StringInstr($HTML2[$i][0],'"')+1)
    $mod = StringMid($mod, 1,StringInstr($mod,'"')-1)
    Switch $mod
    Case "red"
    $HTML2[$i][1] = "Administrator"
    Case "lime"
    $HTML2[$i][1] = "Game Operator"
    Case "blue"
    $HTML2[$i][1] = "Super GameOperator"
    Case "yellow"
    $HTML2[$i][1] = "Forums Moderator"
    Case "orange"
    $HTML2[$i][1] = "VIP"
    EndSwitch
    $admin = StringRegExp($HTML2[$i][0],"<strong>(.*?)</strong>",1)
    $HTML2[$i][0] = $admin[0]
    Else
    $HTML2[$i][1] = "Member"
    EndIf
    If StringInstr($HTML2[$i][0], "Startseite") Then
    _ArrayDelete($HTML2, $i)
    ExitLoop
    EndIf
    If StringInStr($HTML2[$i][0], ":") Then
    $HTML2[$i][0] = StringRegExpReplace($HTML2[$i][0],'Shoutbox','')
    $HTML2[$i][0] = StringTrimLeft(StringRegExpReplace($HTML2[$i][0],'(<).*?(>)',''),12)
    EndIf
    Next
    If $i = Ubound($HTML2) Then Exitloop
    Wend
    _ArrayDisplay($HTML2)

    [/autoit]

    [img=http://img3.imagebanana.com/img/htsc6n0/Userlist.gif]

  • nice :D
    hab rausgefunden warum es bei mir nicht geht, bei mir wird der user agent und ip angezeigt, kannst des noch rausfiltern dann wärs genial ^^
    hab dirn html source von meiner wer ist online liste reingetan ;)

    EDIT 1:
    omg .html darf ned hochgeladen werden, mach ich halt n rar ^^

  • Öhm lösch den Kram dann doch in der While Schleife mit ;P

    Spoiler anzeigen
    [autoit]

    #include <Array.au3>
    #include <INet.au3>
    #include <String.au3>

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

    Local $z = 0

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

    $HTML = _InetgetSource("http://forum-darkgamex.dyndns.org/index.php?page=UsersOnline")
    ;~ $HTML = FileRead(@DesktopDir&"\wer-ist-online.html")
    $HTML = StringMid($HTML, StringInStr($HTML,'<div class="userOnline">'))
    $HTML = StringMid($HTML, StringInStr($HTML,'<tbody>')+7)
    $HTML = StringMid($HTML, 1,StringInStr($HTML,'</tbody>')-1)
    $HTML = StringRegExpReplace($HTML,'<(td|a|tr).*?(>)','')
    $HTML = _StringBetween($HTML, '<p>', "</a>")
    DIm $HTML2[Ubound($HTML)][2]
    For $i = 0 To Ubound($HTML)-1
    $HTML2[$i][0] = $HTML[$i]
    Next

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

    While 1
    For $i = $z To Ubound($HTML2)-1
    $z = $i
    If StringInstr($HTML2[$i][0], "strong") Then
    $mod = StringMid($HTML2[$i][0], StringInstr($HTML2[$i][0],'"')+1)
    $mod = StringMid($mod, 1,StringInstr($mod,'"')-1)
    Switch $mod
    Case "red"
    $HTML2[$i][1] = "Administrator"
    Case "lime"
    $HTML2[$i][1] = "Game Operator"
    Case "blue"
    $HTML2[$i][1] = "Super GameOperator"
    Case "yellow"
    $HTML2[$i][1] = "Forums Moderator"
    Case "orange"
    $HTML2[$i][1] = "VIP"
    EndSwitch
    $admin = StringRegExp($HTML2[$i][0],"<strong>(.*?)</strong>",1)
    $HTML2[$i][0] = $admin[0]
    Else
    $HTML2[$i][1] = "Member"
    EndIf
    If StringInstr($HTML2[$i][0], "Startseite") Or StringInstr($HTML2[$i][0], "Mozilla/5.0") Then
    _ArrayDelete($HTML2, $i)
    ExitLoop
    EndIf
    If StringInStr($HTML2[$i][0], ":") Then
    $HTML2[$i][0] = StringRegExpReplace($HTML2[$i][0],'Shoutbox','')
    $HTML2[$i][0] = StringTrimLeft(StringRegExpReplace($HTML2[$i][0],'(<).*?(>)',''),12)
    EndIf
    Next
    If $i = Ubound($HTML2) Then Exitloop
    Wend
    _ArrayDisplay($HTML2)

    [/autoit]
  • sry aber wenns iwas mit arrays ist krieg ichn schreikrampf ^^ kenn ich mich voll ned aus und raff des iwie ned.

    nur noch etwas ist komisch:

    [1]|
    AutoIt v3
    Heute, 20:19
    &raquo;Wer ist online?&laquo;-Liste|Member

  • Kein Plan.. bei mir klappt alles wunderbar. Wenn du von nem anderem Source Code ausgehst kann ich auch nix machen!

  • Bei mir klappt das:

    [autoit]

    #include <Array.au3>
    #include <INet.au3>

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

    ;~ $HTML = _InetgetSource("http://autoit.de/index.php?page=UsersOnline")
    $HTML = _InetgetSource("http://forum-darkgamex.dyndns.org/index.php?page=UsersOnline")
    $HTML = StringRegExp($HTML, "<tbody>(?s)(.*?)</tbody>",3)
    $HTML = StringRegExp($HTML[0],'<a.*?page=User.*?>(?:<.*?>)*([^<>]+)', 3)
    ;~ MsgBox(0, '', $HTML[0])
    _ArrayDisplay($HTML)

    [/autoit]
  • schon oke ^^

    bin ja der einzigste der ips und user agenst sieht, werd das iwie noch rausfiltern! EIN GROSSES THX :D

  • Maan progandy schäm dich was! Was lässt du jemanden der nur ottonormalverbraucher von StringRegExp's ist solange schuften und kommst dann mit soner kurzen Lösung :D

  • lol progandys post hab ich ned gesehen da hab ich schon geantwortet ^^
    chaoskeks, deine version mit den rängen brauch ich fürn anderes script :D geiles teil ^^
    und thx progandy deins nimm ich für des wo ich eig gefragt hab =)

    ihr seit spitze :D :thumbup: :thumbup: :thumbup:

  • Hi,

    [autoit]

    #Include <Array.au3>
    #include <INet.au3>
    $source = StringRegExp(_INetGetSource("http://forum-darkgamex.dyndns.org/index.php?page=UsersOnline"), 'userID=.+(?:">|<strong>)(.*?)(?:|</strong></font>)</a></p></td>',3)
    _ArrayDisplay($source)

    [/autoit]

    /Edit: Zu langsam :S
    Aber ich habs in einer Zeile :P.

  • lol anno2008 hat den jackpot gewonnen *g*
    bei deinem ist nirgends irgend n kack :D geile sache :D