Estoy tratando de obtener algunos detalles de página (título de página, imágenes en la página, etc.) de una URL/página ingresada arbitrariamente. Tengo un script de proxy back-end que uso a través de ajax GET para devolver el HTML completo de la página remota. Una vez que recupero la respuesta ajax, intento ejecutar varios selectores de jQuery para extraer los detalles de la página. Aquí está la idea general:selectores de jQuery en una cadena de respuesta ajax que es una página html completa
$.ajax({
type: "GET",
url: base_url + "/Services/Proxy.aspx?url=" + url,
success: function (data) {
//data is now the full html string contained at the url
//generally works for images
var potential_images = $("img", data);
//doesn't seem to work even if there is a title in the HTML string
var name = $(data).filter("title").first().text();
var description = $(data).filter("meta[name='description']").attr("content");
}
});
usando $("selector", data)
A veces parece que funciona mientras que otras veces $(data).filter("selector")
parece funcionar. A veces, ninguno de los dos funciona. Cuando inspecciono el contenido de $(data)
, parece que algunos nodos pasan, pero algunos simplemente desaparecen. ¿Alguien conoce una forma consistente de ejecutar selectores en una cadena HTML completa?
posible duplicado de [cadena analizar HTML con jQuery] (http://stackoverflow.com/questions/704679/parse- html-string-with-jquery) –