Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 32261|Répondre: 11

[JavaSE] Le robot d’indexation écrit en Java n’a désormais plus la capacité de télécharger que des images (profondeur 1), et continuera...

[Copié le lien]
Publié sur 03/06/2015 02:38:12 | | | |
Comme le titre l’indique

crawler.rar (62.53 KB, Nombre de téléchargements: 5, Prix de vente: 2 Grain MB)




Précédent:Savez-vous quels conteneurs web asp.net possèdent ? Sauf l’IIS
Prochain:Dédupliquer les données et retourner la collection
Publié sur 03/06/2015 21:05:36 |
Implémentation simple qui ne dépend pas d’autres packages

  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. }
Code de copie
Publié sur 04/06/2015 19:19:48 |
Delver_Si Posté le 03-06-2015 à 23:57
Votre efficacité initiale en développement de code est trop faible, mauvaise critique

Je ne voulais rien dire, mais tu as dit que le développement est inefficace。。。。。

Le programme exige la qualité et les performances du code, et au final, il a peu de fonctions, une faible capacité d’expansion et de mauvaises performances


Exécutez 10 fois de suite, ignorez la latence réseau à chaque fois, ignorez les sauvegardes locales, et ne calculez que le temps nécessaire pour analyser les documents html, votre programme est loin de ça.
Aussi, il y a des erreurs dans ton code, donc je ne dirai rien

Publié sur 03/06/2015 13:00:52 |

Je n’ai pas installé Eclipse et je l’ai regardé dans un bloc-notes, j’ai d’abord récupéré le code source HTML de la page web, puis obtenu la valeur après src, et ensuite je l’ai sauvegardé   

Je ne sais pas si c’est juste  
Publié sur 03/06/2015 07:49:23 |
Peut-on récupérer des images au format PNG ?
 Propriétaire| Publié sur 03/06/2015 10:17:34 |

Oui, je n’ai pas encore jugé le suffixe, ils sont tous enregistrés en jpg, en fait, l’image png peut être ouverte avec un suffixe jpg, et je vais améliorer le suffixe
Publié sur 03/06/2015 12:52:13 |
Laisse-moi étudier la recherche
 Propriétaire| Publié sur 03/06/2015 12:57:13 |
Small slag Publié le 03-06-2015 à 12:52
Laisse-moi étudier la recherche

Comment est l’étude ?
 Propriétaire| Publié sur 03/06/2015 13:05:27 |
Xiao Zhazha Publié le 03-06-2015 à 13:00
Je n’ai pas installé Eclipse et je l’ai regardé dans un bloc-notes, je prends d’abord le code source HTML de la page web, puis je prends la valeur après src, et ensuite j’enregistre le sommet ...

C’est vrai
Publié sur 03/06/2015 21:12:09 |
microxdd publié le 03/06/2015 à 21:05
Implémentation simple qui ne dépend pas d’autres packages

C’est ce rythme qui m’oblige à installer myeclipse !
 Propriétaire| Publié sur 03/06/2015 23:57:27 |
microxdd publié le 03/06/2015 à 21:05
Implémentation simple qui ne dépend pas d’autres packages

Votre efficacité initiale en développement de code est trop faible, mauvaise critique
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com