jsoup හට HTTP ප්‍රොක්සියක් හරහා පිටුව ලබාගෙන එම ඇමතුමේම ප්‍රතිචාරය විශ්ලේෂණය කළ හැකිය:

Document page = Jsoup.connect("https://www.example.com/")
    .proxy("proxy.example", 8080)
    .get();

හොස්ට් නාමය සහ පූර්ණ සංඛ්‍යා පෝටය ප්‍රොක්සිය හඳුනා ගනී. අවසර ලත් පොදු පිටු සඳහා වන ඉල්ලීම් සඳහා ඔබේ සේවාවෙන් හෝ HTTP ප්‍රොක්සි ලැයිස්තුවෙන් HTTP අන්ත ලක්ෂ්‍යයක් තෝරන්න. connect වෙත ලබා දෙන URL ඔබට අවශ්‍ය පිටුව ලෙසම පවතී. මෙම මාර්ගය එකතු කිරීමට පමණක් වෙනම URLConnection එකකින් HTML එක තන්තුවකට බාගත කිරීම අවශ්‍ය නැත.

proxy(String, int) එම ඉල්ලීම සඳහා HTTP ප්‍රොක්සියක් තෝරයි. 1080 වැනි පෝට් අංකයක් එහි ප්‍රොටෝකෝලය SOCKS බවට වෙනස් නොකරයි; ප්‍රොක්සි අන්ත ලක්ෂ්‍යය වින්‍යාස කරන වර්ගයම කතා කළ යුතුය. jsoup java.net.Proxy පිළිගන්නා අධිභාරයක් ද ලබා දෙයි, නමුත් නිශ්චිත මාර්ගයක් සඳහා සහාය තවමත් භාවිත වන HTTP ක්‍රියාත්මක කිරීම මත රඳා පවතී.

සෑම කම්කරුවෙකුට ඔහුගේම ඉල්ලීමක් දෙන්න

ඉල්ලීම්-මට්ටමේ විකල්පය සෑම බාගැනීමක් වටා JVM පද්ධති ගුණාංග වෙනස් කිරීමට වඩා සමාන්තර කාර්යය පහසු කරයි. වෙනස් කළ හැකි ඉල්ලීම සෑම කම්කරුවෙකු සඳහාම වෙන වෙනම තබන්න. නවීන jsoup නව ඉල්ලීමක් සාදන අතරතුර සැසියක සැකසුම් සහ කුකී ගබඩාව බෙදාගත හැකිය:

Connection session = Jsoup.newSession();
Document first = session.newRequest()
    .url("https://www.example.com/one")
    .proxy("proxy-a.example", 8080)
    .get();
Document second = session.newRequest()
    .url("https://www.example.com/two")
    .proxy("proxy-b.example", 8080)
    .get();

ඉහත ඇමතුම් පැහැදිලිකම සඳහා අනුක්‍රමිකව ක්‍රියා කරයි. කාර්යය සමගාමීව බෙදා හරින්නේ නම්, ක්‍රියාත්මක වන එක් Connection එකක ප්‍රොක්සිය වෙනස් කිරීම වෙනුවට ඉල්ලීම් ස්වාධීනව සාදන්න. බෙදාගත් සැසියක් කුකී ද බෙදා ගනී; බ්‍රවුස් කිරීමේ අනන්‍යතා වෙන් වෙන්ව තැබිය යුතු විට විවිධ සැසි භාවිත කරන්න.

මෙම අතුරු මුහුණත් jsoup 1.21.2 හි ඇත. තර්ක නොමැති newRequest() අතුරු මුහුණත 1.14.1 සිට පැමිණේ, එබැවින් පැරණි යෙදුමක් සැසි උදාහරණය භාර ගැනීමට පෙර එහි යැපීම පරීක්ෂා කළ යුතුය.

අක්තපත්‍ර සත්‍යාපිත ප්‍රොක්සියක් සඳහා අමතර අවශ්‍යතාවකි. සාර්ථක මාර්ග තේරීමක් ගිණුමක් ලබා නොදෙන අතර, ප්‍රොක්සි අභියෝගයක් ලැබීම එහි පෝටයට සම්බන්ධ වීමට අසමත් වීමට වඩා වෙනස් ය.

අදාළ ලිපි