WN

WN (https://www.wn.se/forum/index.php)
-   Serversidans teknologier (https://www.wn.se/forum/forumdisplay.php?f=4)
-   -   Läsa innehåller i en html fil med asp? (https://www.wn.se/forum/showthread.php?t=2976)

telefix 2004-08-02 22:16

Någon som vet ett enkelt sätt att läsa innehållet i en htmlfil (vilken url som helst) med ett aspscript

Innehållet ska lagras i en sträng eller en array.

Hoppas på snabbt svar. :rolleyes:

wiggin 2005-09-16 15:54

Vill du läsa en html-fil från din egen server, eller hämta en html-fil från "webben"?

Om du vill läsa från din server kan du använda dig av FSO(File System Object). Om du vill hämta filen via HTTP får du använda dig av ett XMLHTTP-anrop istället.

edit: oj såg inte att tråden var så gammal och med tanke på "Hoppas på snabbt svar." så blir det nästan lite ironiskt och du har antagligen redan löst det :rolleyes: :D

digiArt 2005-09-16 17:56

Trots att frågan är gammal så ger jag ett utförligt svar:
Kod:

Function BinaryGetURL(URL)
  'Create an Http object, use any of the four objects
  Dim Http
  Set Http = CreateObject("Microsoft.XMLHTTP")
  'Set Http = CreateObject("MSXML2.ServerXMLHTTP")
  ' Set Http = CreateObject("WinHttp.WinHttpRequest.5")
  ' Set Http = CreateObject("WinHttp.WinHttpRequest")
 
  'Send request To URL
  Http.Open "GET", URL, False
  Http.Send
  'Get response data As a string
  BinaryGetURL = Http.ResponseBody
  End Function
 
  Function BinaryToString(Binary)
  'Antonin Foller, http://www.pstruh.cz
  'Optimized version of a simple BinaryToString algorithm.
 
  Dim cl1, cl2, cl3, pl1, pl2, pl3
  Dim L
  cl1 = 1
  cl2 = 1
  cl3 = 1
  L = LenB(Binary)
 
  Do While cl1<=L
    pl3 = pl3 & Chr(AscB(MidB(Binary,cl1,1)))
    cl1 = cl1 + 1
    cl3 = cl3 + 1
    If cl3>300 Then
    pl2 = pl2 & pl3
    pl3 = ""
    cl3 = 1
    cl2 = cl2 + 1
    If cl2>200 Then
      pl1 = pl1 & pl2
      pl2 = ""
      cl2 = 1
    End If
    End If
  Loop
  BinaryToString = pl1 & pl2 & pl3
  End Function

Och du lagrar hämtade sidan med:
Kod:

Dim url_to_get
url_to_get = "http://www.exempel.com/"
strURL = (BinaryToString(BinaryGetURL(url_to_get)))

Det mesta kommer från motobit.com.

Tänk bara på upphovsrätten när du använder detta för screenscraping.


Alla tider är GMT +2. Klockan är nu 00:53.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson