Hallo,
ich benötige für ein Projekt eine Javascript 'Funktion', mit der ich definierten Inhalt (also von... bis...) einer Webseite auslesen/parsen kann.
Ich möchte das mit Windows Boardmitteln (WSH) z.B. Aufruf mit: WScript.exe openurl.js) realisieren?
Beispiel für Funktionsaufrufe:
vt = OpenUrl(http://domain.de);
vt = stringTeil(vt, "Anfang", "Ende");
Im Web habe ich eine Lösung für VisualBasic gefunden (siehe OpenURL.bas)
Gibt es ein Pendant zu Javascript JS oder kann man sowas in JS übersetzen?
Gruss Harry F
Inhalt OpenURL.bas
Attribute VB_Name = "OpenUrl"
'API-Deklarationen:
Private Declare Sub InternetCloseHandle Lib "wininet.dll" ( _
ByVal hInet As Long)
Private Declare Function InternetOpenA Lib "wininet.dll" ( _
ByVal sAgent As String, ByVal lAccessType As Long, _
ByVal sProxyName As String, ByVal sProxyBypass As String, _
ByVal lFlags As Long) As Long
Private Declare Function InternetOpenUrlA Lib "wininet.dll" ( _
ByVal hOpen As Long, ByVal sUrl As String, _
ByVal sHeaders As String, ByVal lLength As Long, _
ByVal lFlags As Long, ByVal lContext As Long) As Long
Private Declare Sub InternetReadFile Lib "wininet.dll" ( _
ByVal hFile As Long, ByVal sBuffer As String, _
ByVal lNumBytesToRead As Long, lNumberOfBytesRead As Long)
'Enumeration für Internet:
Public Enum InternetOpenType
IOTPreconfig = 0
IOTDirect = 1
IOTProxy = 3
End Enum
Public Function OpenURL( _
ByVal URL As String, _
Optional ByVal OpenType As InternetOpenType = IOTPreconfig _
) As String
Const INET_RELOAD = &H80000000
Dim hInet As Long
Dim hURL As Long
Dim Buffer As String * 2048
Dim Bytes As Long
'Inet-Connection öffnen:
hInet = InternetOpenA( _
"VB-Tec:INET", OpenType, _
vbNullString, vbNullString, 0)
hURL = InternetOpenUrlA( _
hInet, URL, vbNullString, 0, INET_RELOAD, 0)
'Daten sammeln:
x = 0
Do
InternetReadFile hURL, Buffer, Len(Buffer), Bytes
If Bytes = 0 Then Exit Do
OpenURL = OpenURL & Left$(Buffer, Bytes)
Loop
'Inet-Connection schließen:
InternetCloseHandle hURL
InternetCloseHandle hInet
End Function
Function stringTeil(Text As String, anfangStr As String, endStr As String)
Dim anfang As Long, ende As Long, anfangEnde As Long
If anfangStr = "" Then
anfang = 1
Else
anfang = InStr(1, Text, anfangStr, vbTextCompare)
End If
anfangEnde = anfang + Len(anfangStr)
If endStr = "" Then
ende = Len(Text) + 1
Else
ende = InStr(1, Text, endStr, vbTextCompare)
End If
If anfang > 0 And ende > 0 Then
stringTeil = Mid(Text, anfangEnde, ende - anfangEnde)
Else
stringTeil = NA
End If
End Function
'==================