我有幾個特殊字符的網址我必須用Jsoup.connect(字符串)連接,但它無法加載頁面(出現錯誤500)。我真的沒有那麼多的URL和這樣的,但我認爲它與JSoup.connect使用的編碼有關係Jsoup.connect(字符串)編碼問題
反正,我將如何繼續以便允許鏈接有特殊字符,如: Æ ØA E等,我得到的例外是:
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)
這是生產這種錯誤代碼是:
Document gDoc = Jsoup.connect(placesURL).get();
凡placesURL字符串是:
https://maps.googleapis.com/maps/api/place/textsearch/xml?query=%s&sensor=false&key=XX&radius=10
任何人有任何想法解決這個問題?
謝謝!
%s是查詢正在處理的字符串(通過String.Format),我已經得到一個鍵,使用URLEncoder.encode(stringToBeEncoded,「UTF-8」)給了我一個格式錯誤的URL錯誤; java.lang.IllegalArgumentException:格式不正確的URL:https%3A%2F%2Fmaps.googleapis.com%2Fmaps%2Fapi%2Fplace%2Ftextsearch%2Fxml%3Fquery%3D1001%2520Natt%2C%2520Norge%26sensor%3Dfalse%26key%lkg%26radius %3D10 – user1677631
在這種情況下,您只會在字符串的「查詢」部分使用URLEncoder ...例如JSoup.connect(placesURL.format(URLEncoder.encode(queryString,「UTF-8」)); – 2012-09-18 13:10:38