একটি urllib ওপেনার প্রক্সির মাধ্যমে অনুরোধ পাঠাতে এবং একই সাথে ওয়েবসাইটের কুকি রাখতে পারে। এটিকে উভয় হ্যান্ডলার দিন:

from http.cookiejar import CookieJar
from urllib.request import (
    HTTPCookieProcessor, ProxyHandler, build_opener,
)

cookies = CookieJar()
opener = build_opener(
    ProxyHandler({"http": "http://proxy.example:8080"}),
    HTTPCookieProcessor(cookies),
)
with opener.open("http://www.example.com/", timeout=10) as response:
    body = response.read()

উদাহরণটি একটি সাধারণ HTTP গন্তব্য এবং তার স্পষ্ট প্রক্সি পথ ব্যবহার করে। প্রক্সি প্রমাণীকরণ ছাড়া অনুমোদিত পাবলিক সাইট পরীক্ষার জন্য ওই পথের জন্য HTTP প্রক্সি তালিকা থেকে একটি প্রার্থী বাছুন এবং কাঙ্ক্ষিত কুকি জার রাখুন। একই ওয়েবসাইট সেশনের পরবর্তী অনুরোধের জন্য opener পুনরায় ব্যবহার করুন। কুকি প্রসেসর গ্রহণযোগ্য প্রতিক্রিয়া কুকি বের করে এবং প্রযোজ্যগুলো পরবর্তী অনুরোধে যোগ করে।

প্রতিটি কলের আগে নতুন খালি CookieJar তৈরি করলে সেই ধারাবাহিকতা নষ্ট হয়। জারটি যে সেশনকে প্রতিনিধিত্ব করে তার সাথে রাখুন; যাদের কুকি আলাদা থাকা উচিত এমন অ্যাকাউন্ট বা কর্মপ্রবাহের জন্য আলাদা জার ব্যবহার করুন।

একটি সাধারণ CookieJar অবস্থা মেমোরিতে রাখে। প্রোগ্রাম চালনার মধ্যে স্থায়িত্বের জন্য উপযুক্ত FileCookieJar উপশ্রেণি বেছে নিন এবং সচেতনভাবে সংরক্ষণ বা লোড করুন।

এই ব্যবস্থার জন্য গ্লোবাল opener ইনস্টল করার প্রয়োজন নেই। এই অবজেক্টের open পদ্ধতি কল করলে প্রক্সি ও কুকি একই ক্রিয়াকলাপে সংযুক্ত থাকে।

সম্পর্কিত নিবন্ধ