socks.set_default_proxy() ভবিষ্যতের PySocks socksocket অবজেক্টের জন্য ডিফল্ট সংরক্ষণ করে। এটি Python-এর নেটিভ socket ক্লাস প্রতিস্থাপন করে না। ফলে FTP সংযোগের আগে কলটি ঘটেছে বলেই এটি ftplib-কে পুনরায় পথ দেখায় না।

প্রক্সি URL ধরে রাখা ভেরিয়েবল নয়, কনস্ট্রাক্টরগুলো অনুসরণ করুন। ftplib একটি নিয়ন্ত্রণ সংযোগ ও অতিরিক্ত স্থানান্তর সংযোগ তৈরি করে। প্যাসিভ FTP-তে সফল লগইন কেবল প্রমাণ করে নিয়ন্ত্রণ সংযোগটি কাজ করেছে; তালিকা বা ফাইল স্থানান্তরের জন্য ব্যবহৃত ডেটা socket-টিরও অভীষ্ট পথ প্রয়োজন।

socket.socket প্রতিস্থাপন করা বা একটি মডিউল মোড়ানোর রেসিপি PySocks ডিফল্ট নির্ধারণের বাইরে অন্য কাজ করে। এটি ওই মডিউল ভাগ করা অন্য লাইব্রেরিগুলোকে প্রভাবিত করতে পারে। পরে মূলটি সাময়িকভাবে ফিরিয়ে দিলে সমকালীন সংযোগগুলো পরিবর্তন থেকে বিচ্ছিন্ন হয় না।

একটি কাস্টম ftplib সাবক্লাস সংযোগের পথগুলো ঢাকতে পারে, কিন্তু অনুলিপি করা অভ্যন্তরীণ অংশ যে Python সংস্করণ থেকে এসেছে তার অনুমান বহন করে, যার মধ্যে টাইমআউট সেন্টিনেল ও প্রোটোকল পরিচালনা রয়েছে। স্ট্যান্ডার্ড লাইব্রেরির হালনাগাদ অনুলিপিটি হালনাগাদ করে না।

প্রয়োজনীয় প্রক্সি ও FTP মোডের জন্য একটি রক্ষণাবেক্ষণকৃত ক্লায়েন্ট বা সমর্থিত ইন্টিগ্রেশন বেছে নিন। PycURL প্যাসিভ FTP ডাউনলোডের উদাহরণ একটি আলাদা ক্লায়েন্ট পথ দেখায়। অ্যাপ্লিকেশনের নিজস্ব কাস্টমাইজেশনের জন্য, কোন কনস্ট্রাক্টর প্রতিটি নিয়ন্ত্রণ ও ডেটা socket খোলে তা চিহ্নিত করুন এবং এটি যে আপস্ট্রিম আচরণ প্রতিস্থাপন করে তা সংরক্ষণ করুন। সঠিক প্রক্সি মান কেবল তখনই কাজে লাগে যখন ওই কনস্ট্রাক্টরগুলো সত্যিই তা ব্যবহার করে।

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