J'essaie de créer une sorte de service Web sur Google Apps.Google App Engine (Java): Réponse à la recherche d'URL Problèmes trop importants
Maintenant, le problème est, j'ai besoin d'obtenir des données à partir d'un site Web (HTML Scraping).
La demande ressemble à:
URL url = new URL(p_url);
con = (HttpURLConnection) url.openConnection();
InputStreamReader in = new InputStreamReader(con.getInputStream());
BufferedReader reader = new BufferedReader(in);
String result = "";
String line = "";
while((line = reader.readLine()) != null)
{
System.out.println(line);
}
return result;
maintenant App Engine me donne l'exception follwing à la ligne 3th:
com.google.appengine.api.urlfetch.ResponseTooLargeException
En effet, la limite maximale de la demande est à 1Mo et le total HTML de la page est d'environ 1.5mb.
Maintenant ma question: J'ai seulement besoin des 20 premières lignes du html pour gratter. Est-il possible d'obtenir seulement une partie du code HTML afin que le ResponseTooLargeException ne soit pas levé?
Merci d'avance!
Selon les docs: L'service URL Fetch limite la taille des données pour une requête sortante, et pour une réponse entrante. Lors de l'utilisation de l'API java.net, les données supérieures à la limite sont tronquées de manière silencieuse. L'API URL Fetch de bas niveau permet de spécifier si la troncation se produit en mode silencieux ou si le dépassement d'une limite déclenche une exception –