 
View Full Version : [JAVA] URL e codice HTML
Vorrei sapere se esistono delle classi in java che inserendo un URL riesce a metterti in un buffer (che poi dovrei manipolare) il codice sorgente di quella pagina... grazie.
NapalM
java.net.URL (http://java.sun.com/j2se/1.5.0/docs/api/java/net/URL.html)
Oky creo un istanza di URL, ma per farmi ritornare il codice devo usare 	getContent() e ritorna un oggetto di che tipo?
NapalM
ma per farmi ritornare il codice devo usare 	getContent()
NapalM
puoi usare anche openStream() che ti restituisce un InputStream  e ci fai quello che vuoi.
Problema: per le pagine www.ciao.com\file.html è ok ma non funzia se le pagine sono www.ciao.com\?section=news&pagine=1 ... proprio il mio caso... come posso fare?
NapalM
Problema: per le pagine www.ciao.com\file.html è ok ma non funzia se le pagine sono www.ciao.com\?section=news&pagine=1 ... proprio il mio caso... come posso fare?
NapalM
Non funziona nel senso che lancia qualche eccezione? In tal caso posteresti lo stack trace?
Non funziona nel senso che lancia qualche eccezione? In tal caso posteresti lo stack trace?
Appena ho tempo lo faccio, a naso direi che se non punta a un files preciso che può essere html/wav ecc quel metodo non funzia...almeno negli esempi che ho trovato puntano tutti a file precisi.
NapalM
Allora il codice è questo:
try{
        URL url = new URL("http://www.swedupe.com/?section.php");
        InputStream in = url.openStream();
        BufferedReader reader = new BufferedReader(
                new InputStreamReader(in));
        StringBuffer buffer = new StringBuffer();
        for(int c = reader.read(); c != -1; c = reader.read()) {
            buffer.append((char)c);
        }
        System.out.println(buffer.toString());
        }catch(Exception e){
            System.out.println(e.getMessage());
            
        }
 
L'url di riferimento è: http://www.swedupe.com/?section.php
e quello che mi esce fuori dal catch è: http://web.telia.com/~u63804469/psykfallet/
NapalM
e quello che mi esce fuori dal catch è: http://web.telia.com/~u63804469/psykfallet/
Il link non funziona...
hmmm.... fammi pensare...
Il link non funziona...
Purtroppo è questo che esce dal catch... :(
NapalM
Purtroppo è questo che esce dal catch... :(
NapalM
Non capisco perchè ma, se con telnet funziona, con Java succede che alla connessione HTTP arriva un redirect a quell'indirizzo strano, che non esiste. Se scopro qualcosa ti faccio sapere.
Non capisco perchè ma, se con telnet funziona, con Java succede che alla connessione HTTP arriva un redirect a quell'indirizzo strano, che non esiste. Se scopro qualcosa ti faccio sapere.
te lo confermo, ho provato a fare la stessa cosa con c# e funziona senza problemi... è proprio java in problema a questo punto :(
NapalM
Non ho capito perchè :confused:, ma c'è qualcosa che Java interpreta come una redirect... Comunque io ho risolto inserendo questa riga di codice appena prima di aprire l'InputStream:
HttpURLConnection.setFollowRedirects(false);
Fammi sapere...
Non ho capito perchè :confused:, ma c'è qualcosa che Java interpreta come una redirect... Comunque io ho risolto inserendo questa riga di codice appena prima di aprire l'InputStream:
HttpURLConnection.setFollowRedirects(false);
Fammi sapere...
Appena riesco lo provo, grazie mille :)
NapalM
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.