Tengo varias URL de caracteres especiales a las que me tengo que conectar con Jsoup.connect (cadena), pero no se carga la página (obteniendo un error 500). No me interesa mucho la URL, pero creo que tiene algo que ver con la codificación utilizada por JSoup.connectProblemas de codificación Jsoup.connect (cadena)
De todos modos, ¿cómo procedo para permitir que los enlaces tengan caracteres especiales como: Æ Ø A E, etc, la excepción es que estoy consiguiendo:
java.io.IOException: 500 error loading URL https://maps.googleapis.com/maps/api/place/textsearch/xml?query=Averøy%20restaurant%20og%20Pizzeria,%20Norge&sensor=false&key=xx&radius=10
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:414)
at org.jsoup.helper.HttpConnection$Response.execute(HttpConnection.java:391)
at org.jsoup.helper.HttpConnection.execute(HttpConnection.java:157)
at org.jsoup.helper.HttpConnection.get(HttpConnection.java:146)
at HTMLParser.doParsing(HTMLParser.java:122)
at HTMLParser.initParser(HTMLParser.java:50)
at Main.main(Main.java:15)
el código que está produciendo este error es:
Document gDoc = Jsoup.connect(placesURL).get();
Cuando la cadena placesURL es:
https://maps.googleapis.com/maps/api/place/textsearch/xml?query=%s&sensor=false&key=XX&radius=10
¿Alguien tiene alguna idea para evitar esto?
Gracias!
% s es la cadena que está procesando la consulta (a través de String.Format) y ya obtuve una clave, utilizando URLEncoder.encode (stringToBeEncoded, "UTF-8"), me dio un error de URL mal formado; java.lang.IllegalArgumentException: URL mal formada: https% 3A% 2F% 2Fmaps.googleapis.com% 2Fmaps% 2Fapi% 2Fplace% 2Ftextsearch% 2Fxml% 3Fquery% 3D1001% 2520Natt% 2C% 2520Norge% 26sensor% 3Dfalse% 26key% lkg% 26radius % 3D10 – user1677631
En este caso, solo usará URLEncoder en la parte de "consulta" de su cadena ... por ejemplo JSoup.connect (placesURL.format (URLEncoder.encode (queryString, "UTF-8")); –