Python urllib: এটা opener-ৰ বাবে প্ৰক্সি বন্ধ কৰক
অন্য ক্লায়েণ্ট আৰু প্ৰক্ৰিয়াৰ পৰিৱেশ সলনি নকৰাকৈ ProxyHandler({}) ব্যৱহাৰ কৰি পোনপটীয়া সংযোগৰ urllib opener বনাওক।
এটা urllib opener-এ পোনপটীয়াকৈ সংযোগ কৰিবলগীয়া হ’লে ProxyHandler-ক খালী মেপিং দিয়ক:
from urllib.request import ProxyHandler, build_opener
direct = build_opener(ProxyHandler({}))
with direct.open("https://example.com/", timeout=10) as response:
print(response.status)
খালী ডিক্সনেৰীয়ে কোনো প্ৰক্সি পথ নিদিয়ে। মেপিং বাদ দিলে হেণ্ডলাৰে পৰিৱেশ আৰু প্লেটফৰ্মৰ ছেটিঙৰ পৰা প্ৰক্সি বিচাৰে। নিৰ্মাণৰ এই দুই পদ্ধতিয়ে পৃথক নীতি প্ৰকাশ কৰে।
উদাহৰণে Python-ৰ মানক লাইব্ৰেৰী ব্যৱহাৰ কৰে আৰু স্বাভাৱিক HTTPS যাচাই বজাই ৰাখে। with ব্লকে সঁহাৰি বন্ধ কৰে, ব্যতিক্ৰমৰ বাবে ব্লকৰ পৰা ওলাই গ’লেও।
একে এপ্লিকেচনত পোনপটীয়া আৰু প্ৰক্সিৰে কৰা অনুৰোধ
দুটা opener-এ দুটা নীতি ৰাখিব পাৰে, কলৰ মাজত পৰিৱেশ চলক সলনি নকৰাকৈ:
from urllib.request import ProxyHandler, build_opener
direct = build_opener(ProxyHandler({}))
proxied = build_opener(ProxyHandler({
"http": "http://127.0.0.1:8080",
"https": "http://127.0.0.1:8080",
}))
with proxied.open("https://example.com/", timeout=10) as response:
print(response.status)
লুপবেক ঠিকনাটো নিজৰ HTTP প্ৰক্সিৰে সলনি কৰক অথবা প্ৰক্সিৰে তুলনা কৰিবলৈ HTTP প্ৰক্সিৰ তালিকাৰ পৰা প্ৰাৰ্থী বাছক। সেৱাই অনুমতি দিলে ই HTTPS লক্ষ্যৰ সংযোগ CONNECT-ৰ জৰিয়তে কঢ়িয়াব পাৰে। শুনি থকা সেৱাৰ প্ৰট’কল আৰু প্ৰমাণীকৰণ সমৰ্থন হেণ্ডলাৰৰ সৈতে মিলিব লাগিব।
ডিফল্ট opener সলনি নকৰিব
পথৰ দায়িত্বত থকা অবজেক্টৰ জৰিয়তে direct.open বা proxied.open কল কৰক। install_opener-এ urllib-ৰ সুবিধাজনক কলবোৰে ব্যৱহাৰ কৰা সমগ্ৰ প্ৰক্ৰিয়াৰ ডিফল্ট সলনি কৰে; সেয়ে ইয়াক ব্যৱহাৰ কৰা লাইব্ৰেৰীয়ে অসংশ্লিষ্ট ক’ডত প্ৰভাৱ পেলাব পাৰে। ওপৰৰ পৃথক opener-ৰ বাবে ইয়াৰ প্ৰয়োজন নাই।
timeout আৰ্গুমেণ্ট এটা অপাৰেচনৰ ছেটিং, প্ৰতিটো স্থানান্তৰৰ সম্পূৰ্ণ বাস্তৱ সময়সীমা নহয়। কামত প্ৰয়োজনীয় ডেটাহে পঢ়ক আৰু কঠোৰ মুঠ সময় বাজেট থাকিলে উচ্চ স্তৰৰ সময়সীমা ব্যৱহাৰ কৰক।
এই opener অবজেক্টবোৰে অন্য লাইব্ৰেৰীৰ ক্লায়েণ্ট, বিদ্যমান প্ৰক্ৰিয়া বা ব্ৰাউজাৰৰ প্ৰক্সি ছেটিং সলনি নকৰে।