Este artículo es un artículo espejo de traducción automática, por favor haga clic aquí para saltar al artículo original.

Vista: 32261|Respuesta: 11

[JavaSE] El rastreador que acaba de escribir en Java ahora solo puede descargar imágenes (profundidad 1), y continuará...

[Copiar enlace]
Publicado en 3/6/2015 2:38:12 | | | |
Como indica el título

crawler.rar (62.53 KB, Número de descargas: 5, Precio de venta: 2 Grain MB)




Anterior:¿Sabes qué contenedores web asp.net tener? Excepto IIS
Próximo:Duplicar datos y devolver la colección
Publicado en 3/6/2015 21:05:36 |
Implementación sencilla que no depende de otros paquetes

  1. package test;

  2. import java.io.File;
  3. import java.io.IOException;
  4. import java.io.InputStreamReader;
  5. import java.net.MalformedURLException;
  6. import java.net.URL;
  7. import java.util.regex.Matcher;
  8. import java.util.regex.Pattern;

  9. import javax.imageio.ImageIO;

  10. public class Test {
  11.         public static void main(String[] args) {
  12.                 String web="http://www.itsvse.com/";
  13.                 try {
  14.                         URL url=new URL(web);
  15.                         InputStreamReader reader=new InputStreamReader(url.openStream());
  16.                        
  17.                         StringBuilder builder=new StringBuilder();
  18.                         char[] buff=new char[1024];
  19.                         int n;
  20.                         while((n=reader.read(buff))!=-1){
  21.                                 builder.append(buff,0,n);
  22.                         }
  23.                        
  24.                         Pattern pattern=Pattern.compile("<img.*?src="(.*?)(gif|png|jpg)"");
  25.                        
  26.                         Matcher m=pattern.matcher(builder);
  27.                         while (m.find()) {
  28.                                 String u=m.group(1)+m.group(2);
  29.                                 System.out.println("dowing.."+u);
  30.                                 URL img=null;
  31.                                 if(u.startsWith("http")){
  32.                                         img=new URL(u);
  33.                                 }else{
  34.                                         img=new URL(url,u);
  35.                                 }
  36.                                 ImageIO.write(ImageIO.read(img), m.group(2), new File("D:/img/"+System.currentTimeMillis()+"."+m.group(2)));
  37.                                
  38.                         }
  39.                        
  40.                 } catch (MalformedURLException e) {
  41.                         // TODO Auto-generated catch block
  42.                         e.printStackTrace();
  43.                 } catch (IOException e) {
  44.                         // TODO Auto-generated catch block
  45.                         e.printStackTrace();
  46.                 }
  47.         }
  48. }
Copiar código
Publicado en 4/6/2015 19:19:48 |
Delver_Si Publicado el 3-6-2015 23:57
Tu eficiencia de desarrollo de código original es demasiado baja, mala reseña

No quería decir nada, pero dijiste que el desarrollo es ineficiente。。。。。

El programa requiere la calidad y el rendimiento del código y, al final, tiene pocas funciones, poca capacidad de expansión y bajo rendimiento


Ejecuta 10 veces seguidas, ignora la latencia de red cada vez, ignora partidas locales y solo calcula el tiempo para analizar documentos html, tu programa está lejos de eso.
Además, hay errores en tu código, así que no diré nada

Publicado en 3/6/2015 13:00:52 |

No instalé Eclipse y lo miré en un bloc de notas, primero cogí el código fuente HTML de la página web, luego obtuve el valor después de src, y después lo guardé   

No sé si es correcto  
Publicado en 3/6/2015 7:49:23 |
¿Se pueden capturar imágenes en formato PNG?
 Propietario| Publicado en 3/6/2015 10:17:34 |

Sí, no he juzgado el sufijo ahora, todos se guardan como jpg, de hecho, la imagen png se puede abrir con un sufijo jpg, y mejoraré el sufijo
Publicado en 3/6/2015 12:52:13 |
Déjame estudiar la investigación
 Propietario| Publicado en 3/6/2015 12:57:13 |
Small slag Publicado el 3-6-2015 12:52
Déjame estudiar la investigación

¿Qué tal el estudio?
 Propietario| Publicado en 3/6/2015 13:05:27 |
Xiao Zhazha Publicado el 3-6-2015 13:00
No instalé Eclipse y lo miré en un bloc de notas, primero cogí el código fuente html de la página web, luego el valor después de src, y después guardé el rough ...

Eso es cierto
Publicado en 3/6/2015 21:12:09 |
microxdd publicado el 3-6-2015 a las 21:05
Implementación sencilla que no depende de otros paquetes

¡Este es el ritmo que me obliga a instalar myeclipse!
 Propietario| Publicado en 3/6/2015 23:57:27 |
microxdd publicado el 3-6-2015 a las 21:05
Implementación sencilla que no depende de otros paquetes

Tu eficiencia de desarrollo de código original es demasiado baja, mala reseña
Renuncia:
Todo el software, materiales de programación o artículos publicados por Code Farmer Network son únicamente para fines de aprendizaje e investigación; El contenido anterior no se utilizará con fines comerciales o ilegales; de lo contrario, los usuarios asumirán todas las consecuencias. La información de este sitio proviene de Internet, y las disputas de derechos de autor no tienen nada que ver con este sitio. Debes eliminar completamente el contenido anterior de tu ordenador en un plazo de 24 horas desde la descarga. Si te gusta el programa, por favor apoya el software genuino, compra el registro y obtén mejores servicios genuinos. Si hay alguna infracción, por favor contáctanos por correo electrónico.

Mail To:help@itsvse.com