jsoup صفحہ HTTP پراکسی کے ذریعے حاصل کر سکتا ہے اور اسی کال میں جواب کا تجزیہ کر سکتا ہے:

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

میزبان کا نام اور مکمل عدد پورٹ پراکسی کی شناخت کرتے ہیں۔ اجازت یافتہ عوامی صفحات کی درخواستوں کے لیے اپنی سروس یا HTTP پراکسی فہرست سے HTTP اینڈ پوائنٹ منتخب کریں۔ connect کو دیا جانے والا URL وہی صفحہ رہتا ہے جو آپ چاہتے ہیں۔ صرف یہ راستہ شامل کرنے کے لیے HTML کو الگ URLConnection سے سٹرنگ میں ڈاؤن لوڈ کرنے کی ضرورت نہیں۔

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 سے ہے، اس لیے پرانی ایپلیکیشن کو سیشن کی مثال اپنانے سے پہلے اپنا انحصار جانچنا چاہیے۔

اسناد مستند پراکسی کے لیے ایک اضافی شرط ہے۔ کامیاب راستہ انتخاب اکاؤنٹ فراہم نہیں کرتا، اور پراکسی چیلنج حاصل کرنا اس کے پورٹ سے جڑ نہ سکنے سے مختلف ہے۔

متعلقہ مضامین