Manejo del Document Object Model de Internet Explorer con C#

07/06/2004 - 19:47 por Roberto | Informe spam
Hola:

¿Alguno de los miembros del grupo podría decirme si
existe algún medio de acceder al Document Object Model
que Internet Explorer construye a partir de un documento
html desde una aplicación en C#? Mi problema es que
necesito hacer un parser de html y he creído que acceder
al document Object Model es el mejor modo de hacerlo. He
revisado en la biblioteca de clases del .NET Framework
pero solo he encontrado soporte para xml.

Cualquier información o sugerencia sobre el tema la
agradeceré muchísimo pues la necesito con urgencia y mis
conocimientos del lenguaje C# y el .NET Framework aún son
algo escasos.

Saludos,

Roberto.

Preguntas similare

Leer las respuestas

#6 Jose Marcenaro
14/06/2004 - 21:46 | Informe spam
Hola Roberto
Me alegro que te haya servido la orientación.
Lamentablemente no conozco documentación en español específica de la
biblioteca de clases Microsoft.mshtml, sin embargo puedes buscar si
encuentras algo de la interfaz IHTMLDocument2, ya que esa es la que se
implementa en Microsoft.mshtml

Por empezar, búscalo en la ayuda que se instala con Visual Studio (sin
ningun filtro), o sino buscalo en Google

Saludos desde Argentina
Jose Marcenaro

"Roberto" escribió en el mensaje
news:1baf001c4504b$a00b4940$
Hola Jose:

La solución que me has dado me ha salvado. ¡Muchísimas
gracias! Con esto
creo que ya podré iniciar mi desarrollo.

He probado también el parser que me sugeriste pero según
parece por el
código de ejemplo que lo acompaña está más orientado a
xml que a html así
que es poco probable que lo utilice.

Si tienes o sabes dónde encontrar información en español
sobre el assembly
Microsoft.mshtml también te lo agradeceré pues he buscado
en google y no he
encontrado nada, y ciertamente traducir la información
del msdn es una tarea
algo ardua sobre todo para alguien que como yo aún no
tiene un profundo
dominio del inglés.

Saludos afectuosos desde Cuba,

Roberto.
El control a utilizar es el axWebBrowser (puedes buscar


en Google.com por
ese nombre)

Los pasos a seguir son los siguientes:

- Crear una aplicacion WinForms

- Agregar a la toolbox de VS.NET el elemento (de la


Solapa COM) "Microsoft
Web Browser", que es precisamente el control axWebBrowser

- Arrastrar el control a un Form

- A las referencias del proyecto agregar (de la solapa


NET) el assembly
Microsoft.mshtml para obtener los tipos de dato internos


al documento

- Navegar a una página determinada mediante


axWebBrowser1.Navigate; por
ejemplo:
object flags = null;
object targetFrameName = null;
object postData = null;
object headers = null;
axWebBrowser1.Navigate("localhost/fwkadm",ref flags,


ref
targetFrameName, ref postData, ref headers);

- Luego de que la página se cargue (en el click de otro


boton, por ejemplo),
puede accederse al modelo de objetos del IE de esta


forma:
mshtml.HTMLDocument doc = (mshtml.HTMLDocument)


axWebBrowser1.Document;
mshtml.IHTMLElementCollection coll = doc.all;
mshtml.HTMLSpanElementClass span1 (mshtml.HTMLSpanElementClass)
coll.item("mark",null); // busca id="mark"
MessageBox.Show(span1.innerHTML);

Saludos
Jose Marcenaro

escribió en el


mensaje
news:1959e01c44d24$af900830$
Podría usted realizar aporte de código de cómo acceder y
manejar el ActiveX de IE ?.
Alguien conoce alguna referencia ?


.

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida