Avatar billede nobleheart Nybegynder
04. juli 2001 - 22:55 Der er 4 kommentarer og
1 løsning

Parse HTML med VB

Hej

Jeg er ved at b(r)ygge en applikation, der skal læse og skrive htmlsider (en light Content Manager) og jeg synes der måtte være en component i VB der kan \"opbevare\" sådan en html-fil, så man kunne gennemløbe en collection af links og en med metatags, spørge til title m.v. Men jeg kan ikke rigtig finde den \"der virker\". Jeg havde forestillet mig noget lignende:
Option Explicit

Private Sub Form_Load()
Dim b As MSHTML.HTMLDocument
\'wb is a Webbrowser-combonent from MS Internet Controls
    wb.navigate \"http://www.eksperten.dk\"
    Do While wb.Busy
          DoEvents
    Loop
    Set b = wb.Document
    MsgBox b.Title
End Sub

Men jeg kan ikke rigtigt få fat på alle de andre elementer.
Er der nogen der har erfaring her?
Selvfølgelig kan man lave strenggymnastik, men ... Det er jo ikke beskæftigelsesterapi.
Avatar billede davidleonard Nybegynder
10. juli 2001 - 14:56 #1
Lav en Winsock komponent på din form (Winsock1) en tekstbox (Text1) og en knap (Command1) og en textbox (Text2), som har MultiLine=True

Text1 skal indeholde \"http://www.eksperten.dk\" eller tilsvarende.

public sub Command1_Click ()
winsock1.remotehost=text1
winsock1.remoteport=80
end sub

public sub Winsock1_DataArrival()
dim X as string
winsock1.getdata X
Text2=Text2 & X
end sub

Så har du html koden, og kan så parse videre derfra.
Avatar billede nobleheart Nybegynder
10. juli 2001 - 16:16 #2
Måske var jeg ikke præcis nok i min formulering. Problemet ligger ikke i at få indlæst HTML\'en, men at få den placeret i et object der har alle en html-sides egenskaber, så som Title, Links, Frames o.s.v.
Avatar billede dr-kermit Nybegynder
02. april 2002 - 09:29 #3
Hejsa,

Det hele ligger i en collection i wb, du kan for eksempel få html koden over i en streng med følgende.

strSource = wb.Document.Documentelement.InnerHtml

Hvis du sætter en watch på wb, kan du se alle elementer i wb.

søg evt. via msdn på WebBrowser

Mvh Kenneth Nielsen
Avatar billede dr-kermit Nybegynder
02. april 2002 - 09:36 #4
Her er min løsning på lige det du vil have lavet.

Private Sub LoadPage()
'WebBrowser1 is a Webbrowser-combonent from MS Internet Controls
    WebBrowser1.Navigate "http://www.eksperten.dk"
    Do While WebBrowser1.Busy
          DoEvents
    Loop
    MsgBox WebBrowser1.Document.nameprop
End Sub
Avatar billede nobleheart Nybegynder
30. august 2002 - 03:10 #5
Ja, det havde jeg nu fundet frem til, men points til dig. Så må løsningen jo have noget på sig - Du ved, ud over at virke ;-)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester