Lire la page web en cours

cedalbator Messages postés 4 Date d'inscription jeudi 3 février 2005 Statut Membre Dernière intervention 12 juin 2007 - 25 avril 2007 à 11:14
Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 - 25 avril 2007 à 12:02
Bonjour,
Nouveau sur ce forum et nouveau dans le monde JAVA.
J'ai une question que les "vrai" développeur vont trouver étrange...

Comment faire pour lire le code html d'une page Web en cours.
J'ai bien réussi a le faire sur un page enregistrée dans un répertoire précis sur mon disque.(test.html dans mon workspace ici)
Pas de trace interressante dans les fichiers temporaires internet ....
 

public

class recuperer {

public String NomPrenom;

public String NIR;{

String Arbor=

"test.html";

try{

String Ligne;

int NumLigne=0;

int PosNir=0;

int PosFin=0;

FileReader Fr=

new FileReader(Arbor);BufferedReader Br=

new BufferedReader(Fr);

while (Br.readLine()!=
null)

{

NumLigne++;

if (NumLigne==40){

Ligne=Br.readLine();

PosNir=Ligne.indexOf(

"Jaunes");PosFin=Ligne.indexOf(

"</td>");NIR=Ligne.substring(PosNir+8, PosNir+28);

NomPrenom=Ligne.substring(PosNir+29,PosFin);

}

}

}

catch(IOException ioe){

System.out.println(

"erreur : " + ioe); }

}

public String getNIR() {

return NIR;}

public
void setNIR(String nir) {

NIR = nir;

}

public String getNomPrenom() {

return NomPrenom;}

public
void setNomPrenom(String nomPrenom) {NomPrenom = nomPrenom;

}

}

1 réponse

Twinuts Messages postés 5375 Date d'inscription dimanche 4 mai 2003 Statut Modérateur Dernière intervention 14 juin 2023 111
25 avril 2007 à 12:02
Salut,

tiens un code d'exemple d'une lecture de page web :

import java.net.URL;
import java.net.URLConnection;
import java.util.Scanner;

public class HTMLReader {

    private static final String      NL    = System.getProperty("line.separator");
    private String                       url    = null;
    private Scanner                   sc     = null;

    public HTMLReader(String url) {
        setURL(url);
    }

    /**
     * Change l'url
     *
     * @param url
     *            nouvelle url
     */
    public void setURL(String url) {
        this.url = url;
    }

    /**
     * Ouverture de la connexion pour lire la page
     *
     * @return Retourne
false
si l'ouverture ne peut se faire
     */
    public boolean open() {
        try {
            // création d'un objet url pour lire la page
            URL u = new URL(url);
            // création de la connection
            URLConnection connection = u.openConnection();
            // récupération du stream pour lire la page
            sc = new Scanner(connection.getInputStream());
            return true;
        } catch (Exception e) {
            e.printStackTrace();
            return false;
        }
    }

    public String read() {
        if (sc == null)
            throw new NullPointerException("null InputStream");
        try {
            // data de la page
            StringBuilder data = new StringBuilder();
            while (sc.hasNext())
                // lecture de la page et ajoute le retour chariot (Scanner le skip)
                data.append(sc.nextLine()).append(NL);
            return data.toString();
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }

    /**
     * Fermeture du flux
     */
    public void close() {
        if (sc != null) {
            sc.close();
            sc = null;
        }
    }

    // test
    public static void main(String[] args) {
        // création de l'objet et lecture de la page index du site
        HTMLReader r = new HTMLReader("http://www.javafr.com");
        // ouverture de la connexion
        r.open();
        // lecture de la page
        System.out.println(r.read());
        r.close();
    }

}

------------------------------------
"On n'est pas au resto : ici on ne fait pas dans les plats tout cuits ..."

WORA
0
Rejoignez-nous