Αυτό το άρθρο είναι ένα άρθρο καθρέφτη της αυτόματης μετάφρασης, κάντε κλικ εδώ για να μεταβείτε στο αρχικό άρθρο.

Άποψη: 32261|Απάντηση: 11

[ΙάβαSE] Ο ανιχνευτής που μόλις γράφτηκε σε Java, τώρα έχει μόνο τη δυνατότητα λήψης εικόνων (βάθος 1), και θα συνεχίσει...

[Αντιγραφή συνδέσμου]
Δημοσιεύτηκε στις 3/6/2015 2:38:12 π.μ. | | | |
Όπως υποδηλώνει ο τίτλος

crawler.rar (62.53 KB, Αριθμός λήψεων: 5, Τιμή πώλησης: 2 Κόκκος MB)




Προηγούμενος:Ξέρετε τι κοντέινερ ιστού asp.net έχετε; Εκτός από τις υπηρεσίες IIS
Επόμενος:Καταργήστε τα διπλότυπα δεδομένα και επιστρέψτε τη συλλογή
Δημοσιεύτηκε στις 3/6/2015 9:05:36 μ.μ. |
Απλή υλοποίηση που δεν εξαρτάται από άλλα πακέτα

  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. }
Αντιγραφή κώδικα
Δημοσιεύτηκε στις 4/6/2015 7:19:48 μ.μ. |
Delver_Si Δημοσιεύτηκε στις 2015-6-3 23:57
Η αποτελεσματικότητα ανάπτυξης του αρχικού σας κώδικα είναι πολύ χαμηλή, κακή κριτική

Δεν ήθελα να πω τίποτα, αλλά είπατε ότι η ανάπτυξη είναι αναποτελεσματική。。。。。

Το πρόγραμμα απαιτεί την ποιότητα και την απόδοση του κώδικα και τελικά έχει λίγες λειτουργίες, κακή ικανότητα επέκτασης και κακή απόδοση


Εκτελέστε 10 φορές στη σειρά, αγνοήστε την καθυστέρηση δικτύου κάθε φορά, αγνοήστε τις τοπικές αποθηκεύσεις και υπολογίστε μόνο το χρόνο ανάλυσης εγγράφων html, το πρόγραμμά σας απέχει πολύ από αυτό.
Επίσης, υπάρχουν λάθη στον κώδικά σας, οπότε δεν θα πω τίποτα

Δημοσιεύτηκε στις 3/6/2015 1:00:52 μ.μ. |

Δεν εγκατέστησα το eclipse και το κοίταξα σε ένα σημειωματάριο, πήρα πρώτα τον πηγαίο κώδικα HTML της ιστοσελίδας, μετά πήρα την τιμή μετά το src και μετά το αποθήκευσα   

Δεν ξέρω αν είναι σωστό  
Δημοσιεύτηκε στις 3/6/2015 7:49:23 π.μ. |
Μπορούν να αρπάξουν εικόνες σε μορφή PNG;
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 3/6/2015 10:17:34 π.μ. |

Ναι, δεν έχω κρίνει το επίθημα τώρα, όλα αποθηκεύονται ως jpg, στην πραγματικότητα, η εικόνα png μπορεί να ανοίξει με επίθημα jpg και θα βελτιώσω το επίθημα
Δημοσιεύτηκε στις 3/6/2015 12:52:13 μ.μ. |
Επιτρέψτε μου να μελετήσω την έρευνα
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 3/6/2015 12:57:13 μ.μ. |
Μικρή σκωρία Δημοσιεύτηκε στις 2015-6-3 12:52
Επιτρέψτε μου να μελετήσω την έρευνα

Πώς είναι η μελέτη;
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 3/6/2015 1:05:27 μ.μ. |
Xiao Zhazha Δημοσιεύτηκε στις 2015-6-3 13:00
Δεν εγκατέστησα το eclipse και το κοίταξα σε ένα σημειωματάριο, πιάστε πρώτα τον πηγαίο κώδικα html της ιστοσελίδας, μετά λάβετε την τιμή μετά το src και, στη συνέχεια, αποθηκεύστε το πρόχειρο ...

Αυτό είναι αλήθεια
Δημοσιεύτηκε στις 3/6/2015 9:12:09 μ.μ. |
microxdd Δημοσιεύτηκε στις 2015-6-3 21:05
Απλή υλοποίηση που δεν εξαρτάται από άλλα πακέτα

Αυτός είναι ο ρυθμός που με αναγκάζει να εγκαταστήσω την έκλειψη!
 Σπιτονοικοκύρης| Δημοσιεύτηκε στις 3/6/2015 11:57:27 μ.μ. |
microxdd Δημοσιεύτηκε στις 2015-6-3 21:05
Απλή υλοποίηση που δεν εξαρτάται από άλλα πακέτα

Η αποτελεσματικότητα ανάπτυξης του αρχικού σας κώδικα είναι πολύ χαμηλή, κακή κριτική
Αποκήρυξη:
Όλο το λογισμικό, το υλικό προγραμματισμού ή τα άρθρα που δημοσιεύονται από το Code Farmer Network προορίζονται μόνο για μαθησιακούς και ερευνητικούς σκοπούς. Το παραπάνω περιεχόμενο δεν θα χρησιμοποιηθεί για εμπορικούς ή παράνομους σκοπούς, άλλως οι χρήστες θα υποστούν όλες τις συνέπειες. Οι πληροφορίες σε αυτόν τον ιστότοπο προέρχονται από το Διαδίκτυο και οι διαφορές πνευματικών δικαιωμάτων δεν έχουν καμία σχέση με αυτόν τον ιστότοπο. Πρέπει να διαγράψετε εντελώς το παραπάνω περιεχόμενο από τον υπολογιστή σας εντός 24 ωρών από τη λήψη. Εάν σας αρέσει το πρόγραμμα, υποστηρίξτε γνήσιο λογισμικό, αγοράστε εγγραφή και λάβετε καλύτερες γνήσιες υπηρεσίες. Εάν υπάρχει οποιαδήποτε παραβίαση, επικοινωνήστε μαζί μας μέσω email.

Mail To:help@itsvse.com