¿Cómo puedo obtener html generado a través de AJAX con HTML Agility Pack?

ajax asp.net c# html html-agility-pack

Pregunta

Estoy tratando de analizar la página web. parte de esa página generada a través de AJAX, WebClient.DownloadString Puedo obtener todo el HTML, excepto el código que se genera a través de AJAX? alguien me puede ayudar por favor?

Mi código es:

var client = new WebClient();
client .Headers.Add(HttpRequestHeader.UserAgent, "UserAgent,Mozilla/5.0 (Windows NT 5.1; rv:14.0) Gecko/20100101 Firefox/14.0.1");
client.Headers.Add(HttpRequestHeader.Cookie, "USER_PW=xxxxxxxxx; PHPSESSID=xxxxxxxxxxxxxxxxxx");
var html = client.DownloadString("xxxxxxxxxx");

Necesito lista de vacantes ...

Respuesta aceptada

es posible obtener el contenido que se genera a través de AJAX. Pero no es una tarea sencilla . Todo lo que obtiene es la fuente de la página (la misma que puede ver cuando hace clic con el botón derecho y dice ver la fuente de la página)

Para obtener el contenido de ajax, debe anotar la URL a la que llega la llamada AJAX y luego realizar otra llamada a esta URL para obtener el contenido. You can get this if you inspect the Network Tab of the developer window in any browser o incluso mirando el código javascript que se encuentra dentro.

Desventajas: Esto también significa que solo obtendrá la respuesta de la llamada AJAX, pero qué sucede si el javascript está manipulando esta respuesta (como crear una tabla a partir de la respuesta json). Esto podría tener que hacerlo manualmente en su extremo.

Así que también significa que terminará codificando la misma lógica que en el javascript para obtener el resultado HTML, y esto parece mucho dolor y demasiados agujeros para el error.

Ventaja: si todo lo que le preocupa son solo los datos (como los datos de la base de datos del sitio web) en el HTML y no el HTML exacto, entonces este enfoque funcionará para usted.



Related

Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué
Licencia bajo: CC-BY-SA with attribution
No afiliado con Stack Overflow
¿Es esto KB legal? Sí, aprende por qué