Jsoup.connect (string) ile bağlanmam gereken birkaç özel karakter URL'im var, ancak sayfa yüklenemediğinde (500 hatası alıyor). URL'lerin içine çok fazla değinmiyorum ama sanırım JSoup.connectJsoup.connect (string) kodlama sorunları
tarafından kullanılan kodlamayla ilgili bir şey var. Neyse, bağlantıların özel karakterlere sahip olmasını sağlamak için nasıl devam edeyim: Æ bir e vs i alıyorum istisnadır:
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)
bu hatayı üretiyor kod şudur:
: placesURL dizedirDocument gDoc = Jsoup.connect(placesURL).get();
https://maps.googleapis.com/maps/api/place/textsearch/xml?query=%s&sensor=false&key=XX&radius=10
Bu konuyla ilgili bir fikrin var mı?
Teşekkürler!
% s, sorgunun işlendiği dizedir (String.Format aracılığıyla) ve zaten bir anahtarım var, URLEncoder.encode (stringToBeEncoded, "UTF-8") kullanma, Bana Hatalı Biçimlendirilmiş URL hatası verdi; java.lang.IllegalArgumentException: Yanlış biçimlendirilmiş URL: https% 3A% 2F% 2Fmaps.googleapis.com% 2Faps% 2Fapi% 2Fplace% 2Ftextsearch% 2Fxml% 3Fquery% 3D1001% 2520Natt% 2C% 2520Norge% 26sensor% 3Dfalse% 26key% lkg% 26radius % 3D10 – user1677631
Bu durumda, URLEncoder'ı dizginizin "sorgu" kısmına kullanacaksınız. JSoup.connect (placesURL.format (URLEncoder.encode (queryString, "UTF-8")); –