vrnxsz Posté(e) 22 décembre 2010 Share Posté(e) 22 décembre 2010 Bonjour, Comment peut-on récupérer le code source d'une page chargée dans un WebView? Y a-t-il une méthode qui retourne un String du code si on met une url en paramètre? J'ai trouvé ça mais ca me provoque un FC: public String getHtml(String url) throws ClientProtocolException, IOException { HttpClient httpClient = new DefaultHttpClient(); HttpContext localContext = new BasicHttpContext(); HttpGet httpGet = new HttpGet(url); HttpResponse response = httpClient.execute(httpGet, localContext); String result = ""; BufferedReader reader = new BufferedReader( new InputStreamReader( response.getEntity().getContent() ) ); String line = null; while ((line = reader.readLine()) != null){ result += line + "\n"; } return result; } En plus il y a quelque chose de bizarre car il me force à mettre un try / catch autour de l'appel de cette méthode. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Infernus Posté(e) 22 décembre 2010 Share Posté(e) 22 décembre 2010 Personnellement j'utilise ca : HttpGet getMethod = new HttpGet("ton adresse"); try{ ResponseHandler<String> responseHandler = new BasicResponseHandler(); String responseBody = client.execute(getMethod, responseHandler); } catch (Throwable t){ Toast .makeText(this, "Request failed: "+t.toString(), 4000) .show(); } responseBody est ici le code source de la page. Lien vers le commentaire Partager sur d’autres sites More sharing options...
vrnxsz Posté(e) 22 décembre 2010 Auteur Share Posté(e) 22 décembre 2010 Merci de ta réponse, à quoi correspond "client" ? Client cannot be resolved Est-ce bien ceci: HttpClient client = new DefaultHttpClient(); Lien vers le commentaire Partager sur d’autres sites More sharing options...
Infernus Posté(e) 22 décembre 2010 Share Posté(e) 22 décembre 2010 Oui exactement ceci ^^ Lien vers le commentaire Partager sur d’autres sites More sharing options...
Recommended Posts
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.