ಪುಟವು ಪ್ರಾಕ್ಸಿ ಮೂಲಕ ಲೋಡ್ ಆಗುತ್ತದೆ, ಆದರೆ ಉಚ್ಚಾರಣಾ ಚಿಹ್ನೆಗಳಿರುವ ಅಕ್ಷರಗಳು ವಿಕೃತವಾಗಿ ಹಿಂತಿರುಗುತ್ತವೆ. ಪ್ರಾಕ್ಸಿ ಬದಲಿಸುವ ಮೊದಲು, ಪ್ರತಿಕ್ರಿಯೆಯ ಬೈಟ್‌ಗಳು Java String ಆಗುವ ಮೊದಲ ಸ್ಥಳವನ್ನು ಹುಡುಕಿ. ಸ್ಪಷ್ಟ charset ಇಲ್ಲದ InputStreamReader ಆ ನಿರ್ಣಯವನ್ನು jsoup ದಾಖಲೆಯನ್ನು ನೋಡುವ ಮೊದಲೇ ತೆಗೆದುಕೊಳ್ಳಬಹುದು.

jsoup ಫೆಚ್ ನಿರ್ವಹಿಸಿದಾಗ, ಪಾರ್ಸಿಂಗ್‌ವರೆಗೆ ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಒಟ್ಟಿಗೆ ಇರಿಸಿ:

Connection.Response response = Jsoup
    .connect("https://www.example.com/catalog")
    .proxy("proxy.example", 8080)
    .execute();
Document page = response.parse();

ಪ್ರತಿಕ್ರಿಯೆ API Content-Type ನಿಂದ ಪಡೆದ charset ಮಾಹಿತಿಯನ್ನು ತೋರಿಸುತ್ತದೆ. ಸರ್ವರ್‌ನ ಘೋಷಣೆ ತಪ್ಪು ಎಂದು ದೃಢಪಡಿಸಿದಾಗ ಅದು ಸ್ಪಷ್ಟ charset ಮೇಲ್ಬರಹವನ್ನೂ ಸ್ವೀಕರಿಸಬಹುದು. ಪ್ರಾಕ್ಸಿ ವಿಳಾಸವು ಸ್ವತಃ ದಾಖಲೆಯು ಯಾವ ಅಕ್ಷರ ಎನ್‌ಕೋಡಿಂಗ್ ಬಳಸುತ್ತದೆ ಎಂದು ಹೇಳುವುದಿಲ್ಲ. ಪ್ರಾಕ್ಸಿ ಖಾತೆ ಇಲ್ಲದೆ ಅನುಮತಿಸಲಾದ ಸಾರ್ವಜನಿಕ ಪುಟ ಹೋಲಿಕೆ ಬೇಕಿದ್ದರೆ, ಉದಾಹರಣೆಯ HTTP ಹೋಸ್ಟ್ ಮತ್ತು ಪೋರ್ಟ್ ಅನ್ನು HTTP ಪ್ರಾಕ್ಸಿ ಪಟ್ಟಿಯಿಂದ ಅಭ್ಯರ್ಥಿಯೊಂದಿಗೆ ಬದಲಿಸಿ, ಅದೇ ಎನ್‌ಕೋಡಿಂಗ್ ಪರಿಶೀಲನೆಗಳನ್ನು ಉಳಿಸಿಕೊಂಡು.

ಬೇರೆ HTTP ಕ್ಲೈಂಟ್ InputStream ಒದಗಿಸಿದರೆ, jsoup ನ ಸ್ಟ್ರೀಮ್ ಪಾರ್ಸ್ ಓವರ್‌ಲೋಡ್ charset ಹೆಸರು ಮತ್ತು ಮೂಲ URI ಸ್ವೀಕರಿಸುತ್ತದೆ. ಶೂನ್ಯ charset ಅದರ ದಾಖಲಿತ ಪತ್ತೆ ಮತ್ತು ಫಾಲ್‌ಬ್ಯಾಕ್ ವರ್ತನೆಗೆ ಅನುಮತಿ ನೀಡುತ್ತದೆ; ತಿಳಿದಿರುವ ಮತ್ತು ಸರಿಯಾದ HTTP charset ಅನ್ನು ಉದ್ದೇಶಪೂರ್ವಕವಾಗಿ ವರ್ಗಾಯಿಸಬೇಕು. ಮೂಲ URI ಸಾಪೇಕ್ಷ ಕೊಂಡಿಗಳಿಗೆ ಸಂದರ್ಭ ಒದಗಿಸುತ್ತದೆ.

ಬೈಟ್‌ಗಳು ತಪ್ಪಾಗಿ ಡಿಕೋಡ್ ಆದ ನಂತರ, ಫಲಿತಾಂಶದ String ಅನ್ನು ಬೇರೆ charset ನಿಂದ ಪಾರ್ಸ್ ಮಾಡುವುದು ಮೂಲ ಪಠ್ಯವನ್ನು ಮರುಪಡೆಯುವುದಿಲ್ಲ. ಬೈಟ್‌ಗಳು ಮತ್ತು ಪ್ರತಿಕ್ರಿಯೆಯ ಮೆಟಾಡೇಟಾಗೆ ಹಿಂತಿರುಗಿ. ಸ್ವೀಕರಿಸಿದ್ದನ್ನು ಸಹ ಹೋಲಿಸಿ: ಪ್ರಾಕ್ಸಿಯ ಲಾಗಿನ್ ಪುಟ ಅಥವಾ ನಿರಾಕರಣೆ ವಿನಂತಿಸಿದ ಪುಟಕ್ಕಿಂತ ಸಂಪೂರ್ಣವಾಗಿ ಬೇರೆ ದಾಖಲೆಯಾಗಿರಬಹುದು, ಅದರಲ್ಲಿ ಡಿಕೋಡಿಂಗ್ ವೈಫಲ್ಯವಲ್ಲ.

ಸಂಬಂಧಿತ ಲೇಖನಗಳು