Oppure

Loading
08/05/07 21:43
exels
Salve a tutti, sono un giovane studente e sto cercando di implementare un'indicizzatore del testo contenuto in un sito web.Le ricerche dovrei farle tramite query e stampare a video i documenti in ordine di pertinenza.

Qualcuno di voi ha qualche dritta da darmi? magari se ci sono dei metodi particolari per la ricerca di stringhe o altro... o meglio se avete qualche tutorial... Diciamo che sono motlo newb di java.

A Presto e grazie
aaa
15/05/07 15:13
Macrosoft
Spero di aver capito bene cmq...
Oggi ho trovato uno script che permette di eseguire la stessa operazione di apertura della pagina che fa telnet con la sintassi open google.it 80
Mi spiego meglio. Im programma stampa in un terminale la sintassi della pagina html del sito. Per cambiare sito, ovvio, basta cambiare l'host applicato al Socket... ecco il codice( c'era qualche errore, spero di averli tolti tutti).

//codice copiato da:http://www.extremebit.it
   1. import java.io.*;  
   2. import java.net.*;  
   3.  
   4. public class ClientTest{  
   5.  
   6.        public static void main(String[] args) {  
   7.            try {  
   8.                     Socket s = new Socket("www.extremebit.it",80);  
   9.                     PrintWriter out = new PrintWriter (s.getOutputStream(),true);  
  10.                     BufferedReader in = new BufferedReader (new InputStreamReader(s.getInputStream()));  
  11.                     out.println ("GET / HTTP/1.0");  
  12.                     out.println ();  
  13.                     boolean more = true;  
  14.  
  15.                    while(more) {  
  16.                           String line = in.readLine();  
  17.                           if (line == null)  
  18.                                 more = false;  
  19.                           else System.out.println(line);  
  20.                    }  
  21.                    in.close(); out.close();
 s.close(); // chiusura stream e socket  
  22.                  } catch (IOException e)  
  23.                      {  
  24.                        System.out.println("Error"+e);  
  25.                      }  
  26.       }//main  
  27. }//ClientTest  


basta che fai un convertitore che legge solo le stringhe che ti interessano. Se il sito rispetta la w3c nn devi aver problemi a fare questo, visto che basta copiare il testo compreso ad esempio tra <p> e </p> o <div>e</div>...).

Inoltre, se vuoi approfondire l'argomento Socket e le reti con Java ti consiglio questa pagina per iniziare:extremebit.it/forum/…

Spero di essere stato chiaro. Ciao
aaa