मेरे पास कई विशेष वर्ण यूआरएल हैं जिन्हें मुझे Jsoup.connect (string) से कनेक्ट करना है, लेकिन यह पृष्ठ लोड करने में विफल रहता है (त्रुटि 500 प्राप्त हो रही है)। मैं वास्तव में यूआरएल में इतना नहीं हूं और ऐसा लगता है कि मुझे लगता है कि इसमें JSoup.connectJsoup.connect (स्ट्रिंग) एन्कोडिंग समस्याएं
द्वारा उपयोग किए गए एन्कोडिंग के साथ कुछ करने के लिए कुछ भी है, वैसे भी, मैं लिंक कैसे विशेष वर्णों की अनुमति देने के लिए आगे बढ़ूंगा: Æ Ø एक नौकरी आदि, अपवाद मैं हो रही है:
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 वह स्ट्रिंग है जो क्वेरी प्रसंस्करण कर रही है (स्ट्रिंग.फॉर्मैट के माध्यम से) और मुझे पहले से ही एक कुंजी मिल गई है, URLEncoder.encode (stringToBeEncoded, "UTF-8") का उपयोग करके, मुझे एक विकृत यूआरएल त्रुटि दी; java.lang.IllegalArgumentException: विकृत यूआरएल: https% 3 ए% 2 एफ% 2Fmaps.googleapis.com% 2 फ़ैप्स% 2 फ़ैपी% 2 स्थान% 2Ftextsearch% 2Fxml% 3Fquery% 3D1001% 2520Natt% 2C% 2520 नॉर्ज% 26 सेंसर% 3Dfalse% 26key% lkg% 26radius % 3 डी 10 – user1677631
इस मामले में आप केवल अपनी स्ट्रिंग के "क्वेरी" भाग पर URLEncoder का उपयोग करेंगे ... उदा। JSoup.connect (placesURL.format (URLEncoder.encode (queryString, "UTF-8")); –