Sin el uso de ninguna biblioteca externa, ¿cuál es la forma más sencilla de obtener el contenido HTML de un sitio web en una cadena?Cómo recuperar HTML en Java
Respuesta
Actualmente estoy usando esto:
String content = null;
URLConnection connection = null;
try {
connection = new URL("http://www.google.com").openConnection();
Scanner scanner = new Scanner(connection.getInputStream());
scanner.useDelimiter("\\Z");
content = scanner.next();
}catch (Exception ex) {
ex.printStackTrace();
}
System.out.println(content);
Pero no estoy seguro si hay una manera mejor.
Por qué "\\ Z" ? ¿No es un EOF solo en Windows? Solo estoy adivinando aquí. – greenoldman
Tenga cuidado con el alto rendimiento al usar esto. – qwertzguy
¿Por qué usas "\\ Z"? ¿Qué hace? Intenté sin eso, no funcionó. –
Acabo de salir this post in your other thread, aunque lo que tienes arriba también podría funcionar. No creo que ninguno sea más fácil que el otro. Se puede acceder a los paquetes de Apache simplemente usando import org.apache.commons.HttpClient
en la parte superior de su código.
Editar: ¿Ha olvidado el enlace;)
Aparentemente también debe instalar el archivo JAR :) –
Esto ha funcionado bien para mí:
URL url = new URL(theURL);
InputStream is = url.openStream();
int ptr = 0;
StringBuffer buffer = new StringBuffer();
while ((ptr = is.read()) != -1) {
buffer.append((char)ptr);
}
No estoy seguro de si en la otra solución (s) proporcionado son más eficientes o no.
¿No necesita incluir lo siguiente? import java.io. * import java.net. * –
Claro, pero son core java muy simple. En cuanto al código real, las declaraciones de importación se omiten para mayor claridad. –
después de 'while', ¡también debe mostrar el contenido del búfer! ¡o escribe un método donde lo lees! – rupinderjeet
Si bien no vainilla-Java, ofreceré una solución más simple. Utilice maravilloso ;-)
String siteContent = new URL("http://www.google.com").text
- 1. recuperar el texto del archivo html en java
- 2. ¿Cómo recuperar dinámicamente una constante en Java?
- 3. Escapar html en Java
- 4. Cómo recuperar contenido HTML de WebView (como una cadena)
- 5. Java incrustación en HTML
- 6. Cómo recuperar caracteres prohibidos para nombres de archivos, en Java?
- 7. ¿Cómo recuperar una lista de directorios RÁPIDAMENTE en Java?
- 8. ¿Cómo recuperar información útil del sistema en Java?
- 9. cómo recuperar parte de una cadena en java?
- 10. truncador html en java
- 11. Cómo convertir HTML ==> RTF en Java?
- 12. ¿Cómo escapar caracteres especiales HTML en Java?
- 13. Java: ¿cómo deshacer las entidades de caracteres HTML en Java?
- 14. Recuperar el atributo de anotación Java
- 15. Better Html Builder en java
- 16. Un validador HTML en Java
- 17. ¿Cómo recuperar el valor del elemento de XML utilizando Java?
- 18. cómo recuperar url base de la url dada usando java
- 19. Java HTML Parsing
- 20. Cómo recuperar remotamente un volcado de hilo java
- 21. java imap recuperar mensajes desde una fecha
- 22. Cómo recuperar imágenes en GWT?
- 23. Recuperar solo los parámetros POST (Java)
- 24. java HttpURLConnection cortando html
- 25. ¿Cómo pongo html en un JLabel en java?
- 26. HTML para Java
- 27. Cómo recuperar imágenes de la base de datos MySQL y mostrarlas en una etiqueta html
- 28. ¿Cómo usar expresiones regulares para analizar HTML en Java?
- 29. Cómo analizar y modificar un archivo HTML en Java
- 30. ¿Cómo puedo analizar una cadena HTML en Java?
posible duplicado de http://stackoverflow.com/questions/238547/how-do-you-programmatically-download-a-webpage-in-java – jjnguy