Diese Funktion läuft auch mit VBScript, ASP, VBA.
Aufruf (Beispiel):
fetch_page = getURL("<a href="http://www.example.com/")" target="blank">http://www.example.com/")</a> msgbox fetch_page |
Private Function GetURL(URL) ' --- Konstanten für die Verwendung eines ADODB.Stream-Objektes Const adTypeText = 2 Const adReadAll = -1 ' --- Instantiieren des Objekts MSXML2.ServerXMLHTTP ' Set objHTTP = Server.CreateObject("MSXML2.ServerXMLHTTP.4.0") ' --- für XML 3 ! Set objHTTP = CreateObject("MSXML2.ServerXMLHTTP") ' --- Instantiieren des Set objStream = CreateObject("ADODB.Stream") ' --- Einstellen der Timeouts in Millisekunden ' --- Es gibt 4 Parameter, die in der nachstehenden Reihenfolge angegeben werden müssen ' ----------------------------------------------------- ' --- resolveTimeout - Auflösen des Hostnamens ' --- connectTimeout - Verbinden mit dem Host ' --- sendTimeout - Senden eines Datenpaketes an den Server ' --- receiveTimeout - Empfangen eines Datenpaketes vom Server ' ----------------------------------------------------- objHTTP.SetTimeouts 5000, 5000, 5000, 5000 ' --- Erstellen des Requests mit folgenden Parametern ' --- bstrMethod - Request-Methode ' --- bstrURL - Adresse der Seite, die ausgelesen werden soll ' --- varAsync - Laden der Seite asynchron (Wenn false, wird synchron geladen) objHTTP.open "GET", URL, false ' --- Senden des Requests objHTTP.send ' --- Datenstrom öffnen und den Typ TEXT festlegen objStream.Open objStream.Type = adTypeText ' --- Den Inhalt des ResponseBody in das Stream-Objekt schreiben objStream.WriteText(objHttp.ResponseBody) ' --- An den Anfang des "Stromes" positionieren objStream.Position = 0 ' --- Deuschsprachingen Zeichensatz einstellen objStream.Charset = "latin1" ' --- Der gesamte Text der geladenen Seite wird jetzt in das Stream-Objekt ' --- eingelesen und als Rückgabewert der Funktion GetURL zugewiesen. ' --- Und abschließend muss das Objekt wieder geschlossen werden. GetURL = objStream.ReadText(adReadAll) objStream.close ' --- Terminieren der Objekte Set objStream = Nothing Set objHTTP = Nothing End Function |