Hitilafu za usimbaji wa herufi katika jsoup baada ya kupakua kupitia proksi
Chunguza herufi zilizochanganyika kwenye ukurasa uliopakiwa kupitia proksi kwa kuhifadhi taarifa za usimbaji wa jibu wakati wa uchanganuzi wa HTML.
Ukurasa hupakiwa kupitia proksi, lakini herufi zenye alama za lafudhi hurudi zimechanganyika. Kabla ya kubadilisha proksi, tafuta mahali pa kwanza ambapo baiti za jibu huwa Java String. InputStreamReader bila charset iliyo wazi inaweza kufanya uamuzi huo kabla jsoup kuona hati.
Wakati jsoup inashughulikia upataji, shikilia jibu pamoja hadi uchanganuzi:
Connection.Response response = Jsoup
.connect("https://www.example.com/catalog")
.proxy("proxy.example", 8080)
.execute();
Document page = response.parse();API ya jibu hufichua taarifa za charset zinazotokana na Content-Type. Inaweza pia kukubali ubadilishaji wa charset ulio wazi unapothibitisha kuwa tamko la seva si sahihi. Anwani ya proksi peke yake haikwambii usimbaji gani wa herufi unaotumiwa na hati. Ikiwa unahitaji ulinganisho unaoruhusiwa wa ukurasa wa umma bila akaunti ya proksi, badilisha hosti na bandari ya HTTP ya mfano na mwanakamati kutoka orodha ya proksi za HTTP, huku ukihifadhi ukaguzi huohuo wa usimbaji.
Ikiwa mteja mwingine wa HTTP atatoa InputStream, upakiaji wa uchanganuzi wa mtiririko wa jsoup hukubali jina la charset na URI msingi. Charset null huruhusu ugunduzi na tabia ya hifadhi iliyoandikwa; charset ya HTTP inayojulikana na sahihi inapaswa kuhamishwa kwa makusudi. URI msingi hutoa muktadha kwa viungo vinavyohusiana.
Baiti zikishawekwa kusimbuliwa vibaya, uchanganuzi wa String inayotokana na charset nyingine haurejeshi maandishi ya awali. Rudi kwenye baiti na metadata ya jibu. Linganisha pia kilichopokelewa: ukurasa wa kuingia au kukataliwa kwa proksi unaweza kuwa hati tofauti kabisa na ukurasa ulioombwa, badala ya kushindwa kwa usimbaji ndani yake.