curl-কে Python-এ রূপান্তর করুন
curl2code জনপ্রিয় requests লাইব্রেরি ব্যবহার করে যেকোনো curl কমান্ডকে তাৎক্ষণিকভাবে পরিচ্ছন্ন Python কোডে রূপান্তর করে। এই রূপান্তরটি WebAssembly-এর মাধ্যমে সম্পূর্ণভাবে আপনার ব্রাউজারে চলে — আপনার ডেটা কখনোই আপনার ডিভাইস থেকে বাইরে যায় না। আপনি যদি ফ্রন্টএন্ডে TypeScript নিয়ে কাজ করেন, তবে আমাদের curl to TypeScript converter দেখুন। সার্ভার-সাইড JavaScript-এর জন্য curl to Node.js দেখুন। নিচে আপনি সবচেয়ে সাধারণ HTTP সিনারিওগুলোর ব্যবহারিক উদাহরণ পাবেন।
আপনার ব্রাউজার থেকে কীভাবে curl কপি করবেন
- 1
DevTools ওপেন করুন
আপনার ব্রাউজার ডেভেলপার টুলস ওপেন করতে F12 অথবা Ctrl+Shift+I চাপুন।
- 2
Network ট্যাবে যান
Network ট্যাবে ক্লিক করুন এবং সেই কাজটি করুন যা HTTP রিকোয়েস্টটি ট্রিগার করে।
- 3
cURL হিসেবে কপি করুন
রিকোয়েস্টের ওপর রাইট-ক্লিক করুন → Copy → Copy as cURL। তারপর এটি উপরে পেস্ট করুন।
সচরাচর জিজ্ঞাসিত প্রশ্নাবলী
Python Requests কী?
Python Requests হলো Python-এর জন্য সবচেয়ে জনপ্রিয় HTTP ক্লায়েন্ট লাইব্রেরি যার GitHub-এ ৫০,০০০-এর বেশি স্টার রয়েছে। এটি HTTP রিকোয়েস্ট করা, সেশন হ্যান্ডেল করা, কুকিজ এবং অথেনটিকেশনের জন্য একটি চমৎকার Pythonic API প্রদান করে। এটি সরাসরি JSON পার্সিং, কানেকশন পুলিং এবং স্বয়ংক্রিয় কন্টেন্ট ডিকোডিং সমর্থন করে। এটি pip install requests দিয়ে ইনস্টল করুন। Python কনভার্সনের জন্য curl2code-এ এটি ডিফল্ট লাইব্রেরি হিসেবে ব্যবহৃত হয়।
Requests বনাম http.client — কোনটি ব্যবহার করা উচিত?
সহজ API, স্বয়ংক্রিয় JSON পার্সিং এবং বিল্ট-ইন সেশন সাপোর্টের কারণে বেশিরভাগ ক্ষেত্রে Requests ব্যবহারের পরামর্শ দেওয়া হয়। http.client হলো Python স্ট্যান্ডার্ড লাইব্রেরির অংশ এবং এর জন্য কোনো ইনস্টলেশনের প্রয়োজন নেই, যা এটিকে মিনিমাল এনভায়রনমেন্টের জন্য উপযুক্ত করে তোলে। অন্যান্য ভাষায় অনুরূপ সহজ পদ্ধতির জন্য, আমাদের curl to Ruby কনভার্টার অথবা curl to Go কনভার্টার দেখুন।
Python Requests-এ অথেনটিকেশন কীভাবে হ্যান্ডেল করবেন?
Bearer অথেনটিকেশনের জন্য আপনার টোকেন সহ একটি Authorization হেডার পাস করুন, অথবা Basic অথেনটিকেশনের জন্য requests.auth.HTTPBasicAuth(user, pass) ব্যবহার করুন। curl2code স্বয়ংক্রিয়ভাবে -u user:pass এবং -H 'Authorization: Bearer ...' সহ অথেনটিকেশন প্যাটার্ন শনাক্ত করে।
Python দিয়ে কীভাবে মাল্টিপার্ট ফর্ম ডেটা পাঠাবেন?
files প্যারামিটার ব্যবহার করুন: requests.post(url, files={ 'file': open('doc.pdf', 'rb') })। অতিরিক্ত ফর্ম ফিল্ডের জন্য, একই সাথে data ব্যবহার করুন। curl2code স্বয়ংক্রিয়ভাবে -F ফ্ল্যাগগুলো হ্যান্ডেল করে।
এরর এবং রিট্রাই (retry) কীভাবে হ্যান্ডেল করবেন?
4xx/5xx এররের ক্ষেত্রে এক্সেপশনের জন্য response.raise_for_status() ব্যবহার করুন। requests.exceptions.RequestException ক্যাচ করার জন্য এটিকে try/except ব্লকে রাখুন। রিট্রাই করার জন্য, Session অ্যাডাপ্টারের সাথে urllib3.util.Retry ব্যবহার করুন।
Python-এ কীভাবে অ্যাসিনক্রোনাস (async) HTTP রিকোয়েস্ট করবেন?
requests হলো সিনক্রোনাস। অ্যাসিনক্রোনাস HTTP-র জন্য, aiohttp অথবা httpx (যা requests-এর সাথে সামঞ্জস্যপূর্ণ ইন্টারফেস সহ সিনক্রোনাস এবং অ্যাসিনক্রোনাস উভয় API অফার করে) ব্যবহার করুন। হাই-কনকারেন্সি সিনারিওতে, অ্যাসিনক্রোনাস ক্লায়েন্টগুলো উল্লেখযোগ্যভাবে ভালো থ্রুপুট প্রদান করে।
টাইমআউট এবং কানেকশন পুলিং কীভাবে সেট করবেন?
সর্বদা টাইমআউট সেট করুন: requests.get(url, timeout=(3.05, 27))। কানেকশন পুলিংয়ের জন্য, requests.Session() ব্যবহার করুন যা TCP কানেকশন পুনরায় ব্যবহার করে। curl-এর --connect-timeout এবং --max-time এগুলোর সাথে ম্যাপ করা হয়।
Python Requests-এ প্রক্সি কীভাবে কনফিগার করবেন?
একটি proxies ডিকশনারি পাস করুন: { 'https': 'http://proxy:8080' }। SOCKS-এর জন্য, requests[socks] ইনস্টল করুন। এটি HTTP_PROXY / HTTPS_PROXY এনভায়রনমেন্ট ভেরিয়েবলগুলোকেও সমর্থন করে। curl2code স্বয়ংক্রিয়ভাবে -x এবং --proxy কনভার্ট করে।
Python-এ JSON বডি সহ একটি POST রিকোয়েস্ট কীভাবে পাঠাবেন?
curl2code ব্যবহার করে curl -X POST -H "Content-Type: application/json" -d '{"key":"value"}' URL এর মতো একটি curl POST কমান্ডকে Python-এ রূপান্তর করুন। জেনারেট করা কোড requests.post(url, json={'key': 'value'}) ব্যবহার করে। curl2code স্বয়ংক্রিয়ভাবে JSON কন্টেন্ট সহ -d/--data ফ্ল্যাগ শনাক্ত করে এবং Requests কোডে উপযুক্ত Content-Type হেডার সেট করে।
Python-এ Bearer token অথরাইজেশন কীভাবে যোগ করবেন?
curl2code-এ curl -H "Authorization: Bearer YOUR_TOKEN" URL পাস করুন এবং এটি অথরাইজেশন হেডার সহ Requests কোড জেনারেট করে: headers={'Authorization': 'Bearer YOUR_TOKEN'}। curl2code -H "Authorization: Bearer ..." এবং --oauth2-bearer উভয় ফ্ল্যাগ থেকে Bearer token শনাক্ত করে। Basic auth এর জন্য -u user:pass ব্যবহার করুন।
Python-এ Content-Type হেডার কীভাবে সেট করবেন?
curl2code curl -H "Content-Type: application/json" URL কমান্ডকে সঠিক হেডার সহ Requests কোডে রূপান্তর করে: headers={'Content-Type': 'application/json'}। -d ডেটার জন্য curl ডিফল্টভাবে application/x-www-form-urlencoded ব্যবহার করে; -F ফর্ম আপলোডের জন্য এটি multipart/form-data ব্যবহার করে। curl2code প্রতিটি রিকোয়েস্টকে সঠিক Requests API-তে ম্যাপ করে।
একটি curl কমান্ডকে Python কোডে কীভাবে রূপান্তর করবেন?
আপনার curl কমান্ডটি curl2code-এ পেস্ট করুন এবং Python নির্বাচন করুন। এই টুলটি সমস্ত ফ্ল্যাগ — -X (method), -H (headers), -d (data), -u (auth), -F (form), cookies এবং আরও অনেক কিছু পার্স করে এবং পরিষ্কার Python Requests কোড জেনারেট করে। এই রূপান্তরটি WebAssembly এর মাধ্যমে আপনার ব্রাউজারে স্থানীয়ভাবে চলে, তাই আপনার API কী এবং ডেটা ব্যক্তিগত থাকে। আপনি বিকল্প লাইব্রেরি হিসেবে http.client বেছে নিতে পারেন।