InetRead funktioniert nicht, adresse zu bestimmtem port (?)

  • Hallo,
    Ich versuche den Quelltext der Website

    http://streamplus36.leonex.de:38034/

    Auszulesen. Das Problem ist, das InetRead, InetGet, und _INETGetSource alle kein ergebnis zurückgeben
    Eine InetGetSize() anfrage gab 0 zurück....
    Könnt ihr mir helfen - Ich glaube das problem liegt am : vor der Zahlenkombination, welcher allerdings zum aufrufen der richtigen website unerlässlich ist

    Einmal editiert, zuletzt von Sundown (29. Februar 2012 um 14:24)

  • Probiers doch einfach mal mit WinHTTP. Das Beispiel-Script bissle umändern und du hast schon deine Lösung...

    Spoiler anzeigen
    [autoit]

    #include <WinHttp.au3>

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

    Global $hOpen = _WinHttpOpen("Mozilla/5.0 (Windows NT 6.1; rv:10.0.2) Gecko/20100101 Firefox/10.0.2")
    If @error Then
    MsgBox(48, "Error", "Error initializing the usage of WinHTTP functions.")
    Exit 1
    EndIf

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

    Global $hConnect = _WinHttpConnect($hOpen, "streamplus36.leonex.de", 38034)
    If @error Then
    MsgBox(48, "Error", "Error specifying the initial target server of an HTTP request.")
    _WinHttpCloseHandle($hOpen)
    Exit 2
    EndIf

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

    Global $hRequest = _WinHttpOpenRequest($hConnect)
    If @error Then
    MsgBox(48, "Error", "Error creating an HTTP request handle.")
    _WinHttpCloseHandle($hConnect)
    _WinHttpCloseHandle($hOpen)
    Exit 3
    EndIf

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

    _WinHttpSendRequest($hRequest)
    If @error Then
    MsgBox(48, "Error", "Error sending specified request.")
    _WinHttpCloseHandle($hRequest)
    _WinHttpCloseHandle($hConnect)
    _WinHttpCloseHandle($hOpen)
    Exit 4
    EndIf

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

    _WinHttpReceiveResponse($hRequest)

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

    Global $sChunk, $sData
    If _WinHttpQueryDataAvailable($hRequest) Then
    ; Read
    While 1
    $sChunk = _WinHttpReadData($hRequest)
    If @error Then ExitLoop
    $sData &= $sChunk
    WEnd
    MsgBox(0, "", $sData)
    Else
    MsgBox(48, "Error", "Site is experiencing problems.")
    EndIf

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

    ; Close handles when they are not needed any more
    _WinHttpCloseHandle($hRequest)
    _WinHttpCloseHandle($hConnect)
    _WinHttpCloseHandle($hOpen)

    [/autoit]
  • Eine frage hätte ich da noch.
    Läd winhttp die datei jedesmal neu oder wird der cache benutzt.... Bzw, wie mache ich es, dass sie jedesmal neu geladen wird?

  • Nur eine Alternative mit etwas weniger Schreibaufwand:

    [autoit]

    $o_HTTP = ObjCreate('winhttp.winhttprequest.5.1')
    $o_HTTP.Open('GET','http://streamplus36.leonex.de:38034')
    $o_HTTP.Send('')

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

    ConsoleWrite($o_HTTP.ResponseText & @CRLF)

    [/autoit]


    Diese Lösung sollte nicht cachen.
    Bei der WinHTTP-Lösung glaube ich ebenfalls nicht das gecached wird.