Vorrei sapere se esiste un modo semplice per analizzare l'HTML in vb.net. So che HTML non è un sottoinsieme di XML, ma sarebbe bello se potesse essere trattato in questo modo. C'è qualcosa là fuori che mi permetta di analizzare HTML in un modo simile a XML in VB.net?Come si analizza un codice HTML in vb.net
risposta
Mi piace Html Agility pack - è molto sviluppatore, gratuito e il codice sorgente è disponibile.
Ma lo sviluppatore del codice di autocostruzione è amichevole. Capisco che il termine "sviluppatore amichevole" può essere molto soggettivo, tuttavia ho provato diversi modi per analizzare/modificare il codice HTML e questo è semplice il meglio (per .NET e per pagamento gratuito), ciò che è possibile ottenere e l'assenza di documentazione non cambiarlo È una realtà crudele. – TcKs
Non sono riuscito a ottenere il pacchetto Agilità HTML per fare qualcosa di utile per me. Tutto quello che stavo ottenendo era l'output HTML diretto nella casella di testo, anziché l'HTML formattato in modo analogo. –
@JoelR. Hai fatto qualcosa di terribilmente sbagliato. Hai letto alcuni tutorial su questo? – TcKs
È ben formato? Se l'HTML è in realtà ben formato, può essere analizzato come XML. Se si tratta di zuppa di tag e non ci sono elementi non chiusi e penso che dovresti cercare in giro per una soluzione di terze parti.
Che cosa è successo ad accedere al modello di oggetto documento (dom) usando mshtml? –
Se il codice HTML segue gli standard XHTML, è possibile eseguire molte operazioni di analisi e elaborazione utilizzando le classi dello spazio dei nomi System.XML.
Se, d'altra parte, se ciò che stai analizzando è ciò che gli sviluppatori web definiscono "zuppa di tag", avrai bisogno di un parser di terze parti come HTML Agility Pack.
Questa può essere solo una soluzione parziale al tuo problema se stai cercando di capire come un browser interpreterà il tuo codice HTML in quanto ogni browser analizza la zuppa di tag in modo leggermente diverso.
'aggiungere prog ref troppo: Microsoft.mshtml
' quindi nella pagina:
Imports mshtml
Function parseMyHtml(ByVal htmlToParse$) As String
Dim htmlDocument As IHTMLDocument2 = New HTMLDocumentClass()
htmlDocument.write(htmlToParse)
htmlDocument.close()
Dim allElements As IHTMLElementCollection = htmlDocument.body.all
Dim allInputs As IHTMLElementCollection = allElements.tags("a")
Dim element As IHTMLElement
For Each element In allInputs
element.title = element.innerText
Next
Return htmlDocument.body.innerHTML
End Function
Come trovato here:
non usa essenzialmente le stesse librerie che IE usa per caricare il suo DOM? Ho già provato questo, ma sembra sempre così sporco .... – tooleb
Non usare l'agilità confezione, basta usare MSHTML biblioteca per accedi al dom, questo è ciò che vale a dire usi ed è ottimo per passare attraverso elementi HTML.
Agility pack è un brutto e inutilmente hackie se me lo chiedi, mshtml è la strada da percorrere. Cercalo su msdn.
- 1. In VB.NET si può fare un blocco di codice arbitario?
- 2. Come si analizza un file .mdmp?
- 3. Come si analizza un pattern PCRE?
- 4. Come si analizza JSON in Racket?
- 5. Come si analizza YAML in un hash/oggetto?
- 6. Come si analizza l'invio di un modulo con Dart?
- 7. Come si analizza una VCard in un dizionario Python?
- 8. come vedere il codice progettista in vb.net
- 9. Ottenere un NullPointerException mentre si analizza JSON
- 10. Come aggiungere attributo HTML id in ASP.NET MVC w/VB.NET
- 11. Analizza la pagina html completa con jquery
- 12. Come aggiungere 1 html puro in un altro codice HTML
- 13. Come si crea un evento annullabile in vb.net
- 14. Come si crea un nuovo array in VB.NET?
- 15. Come si analizza il codice sorgente Java e si assicura che sia thread safe
- 16. Come si analizza il servizio Web XML in Swift?
- 17. Blocca commenti codice VB/VB.NET
- 18. Come si rilevano tasti simultanei come "Ctrl + T" in VB.NET?
- 19. C# a VB.NET Codice Converter
- 20. Perché questo codice HTML si blocca IE?
- 21. Analizza la copertura del codice Scomparsa
- 22. Conversione di un codice carattere in char (VB.NET)
- 23. Come visualizzare "codice HTML generato" in Firefox?
- 24. Come si invia una e-mail gmail in vb.net?
- 25. Analizza i colori del codice di escape ANSI nel browser?
- 26. Regex - Corrispondenza attributo in un codice HTML
- 27. Java analizza un numero in notazione esponenziale
- 28. Come si usa un valore nullo in un doppio in VB.Net 2010?
- 29. Analizza un file JavaScript tramite PHP
- 30. Come si analizza in modo efficiente un file CSV in Perl?
Potrebbe aiutarci a rispondere se dichiari cosa vuoi fare con esso una volta che è stato analizzato. – Rob
Per ora, mi interessa essere in grado di selezionare tutti i collegamenti, il testo e le immagini in specifiche div. Dove la classe div o id cambierà/potrebbe cambiare da una pagina all'altra. – tooleb
sembra che HTML Agility pack probabilmente funzionerà per me. Ci sono altre opzioni ???? – tooleb