Just nu i M3-nätverket
Gå till innehåll

Göra om html till text med asp?


KQ

Rekommendera Poster

Jag skulle vilja konvertera om en html sida till "ren" text. Jag vill att detta går automatiskt vid olika tillfällen som jag själv spcificerar genom att besöka asp sidan eller så och på så sätt får min fil.txt uppdaterad.

 

 

 

Jag har haft idéer som bygger på

1. wget.exe <spara ner html>

2. aspexec htm2txt.exe <konvertera om html -> txt>

 

Men inget program har fungerat tillfredställande vad gäller renheten av txt dokumentet.

 

 

 

Någon som har nåt tips på hur detta går att lösa?

 

 

Länk till kommentar
Dela på andra webbplatser

Stefan B Karlsson

Hur vill du att det ska gå till.

Du kan väldigt lätt i Visual Basic sätta en referens till Microsoft Internet Controls, ladda en sida och sen hämta ut outertext på documentet och sedan spara ner det till en fil.

 

 

    [color="#0000ff"]Dim[/color] x As [color="#0000ff"]New[/color] InternetExplorer
    x.Navigate [GRÅ]"http://www.alltheweb.com/"[/GRÅ]
    [color="#0000ff"]Do[/color] Until x.Busy = [color="#0000ff"]False[/color]
        DoEvents
    [color="#0000ff"]Loop[/color]
    open [GRÅ]"c:\mintextfil.txt"[/GRÅ] [color="#0000ff"]For[/color] output as #1
    print #1,x.Document.body.outertext
   close #1

På detta sätt får du garanterat ren text utan taggar och annat i resultatet och kan bygga vidare programmet som t.ex. en service som går med de intervall du själv bestämmer.

 

mvh /

Stefan Karlsson

ITmaskinen.se

 

Länk till kommentar
Dela på andra webbplatser

 

Hej Stefan

 

Tack för ditt svar. Vad jag vill göra är egentligen att ladda ner en webbsida och spara den som en .txt fil för att sedan posta den i en databas (och spara .txt filen som ett arktiv). För att sedan kunna göra vad jag vill med texten. Jag skulle kunna tänka mig att använda din kod för att göra detta om jag bara hade tillgång till VB utvecklingsprogrammen för att skapa en .exe fil som jag skulle kunna kalla på från min ASP kod. Men de har jag dessovärre inte. Jag gissar att VB programmen är rätt dyra.

 

Du vet inte om det går på något smidigt sätt att tillämpa din VB kod med ASP kod? Jag kan lite ASP men inte någon höjdare på VB.

 

Mvh

Kenneth

 

 

Länk till kommentar
Dela på andra webbplatser

Stefan B Karlsson

Hej.

Jag kan lätt kompilera mitt kodexempel till en dll som du kan anropa från asp-sidan

 

Då skriver du så här i aspsidan :

 

[color="#0000ff"]Dim[/color] ResultText as strint
[color="#0000ff"]Dim[/color] AspExtender

AspExtender=[b]Server[/b].[color="#0000ff"]CreateObject[/color]([GRÅ]"ITM.AspExtender"[/GRÅ])
ResultText=AspExtender.GetPage ([GRÅ]"http://www.alltheweb.com"[/GRÅ])


[color="#006400"]'Och så kan du spara till db:[/color]
[color="#0000ff"]Dim[/color] db
[color="#0000ff"]Set[/color] db=[b]Server[/b].[color="#0000ff"]CreateObject[/color]([GRÅ]"adodb.connection"[/GRÅ])
db.open [GRÅ]"din databaskoppling"[/GRÅ]

db.[color="#0000ff"]Execute[/color] ([GRÅ]"insert into dintabell (fältetsomtextenskalagrasi)  values('"[/GRÅ] & SQLSafe(Resulttext) & [GRÅ]"') "[/GRÅ])


[color="#0000ff"]Function[/color] SQLSafe(TheText)(
 SQLSafe=[color="#0000ff"]Replace[/color](TheText,[GRÅ]"'"[/GRÅ],[GRÅ]"''"[/GRÅ])

)

 

 

Obs, jag har skrivit ovanstående kod "on the fly" i den här textrutan, så det kan vara nåt enstaka fel.

 

Säg till om du vill att jag ska göra om funktionen till en dll så gör jag det och lägger upp på nån site så att du kan ladda ner den.

 

 

mvh /

Stefan Karlsson

ITmaskinen.se

 

[inlägget ändrat 2005-07-25 09:22:43 av Stefan B Karlsson]

Länk till kommentar
Dela på andra webbplatser

Hej igen Stefan!

 

Ursäkta att jag tog sån tid på mig att svara. De blir lite slöare nu under semestern och så :-) Skulle va grymmt schyst av dig om du har lust att göra en sådan dll. :-)

 

 

Mvh

Kenneth

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...