- ازگر کی درخواستیں کیا ہیں؟
- ازگر کی درخواستیں کیوں استعمال کریں؟
- ازگر درخواستیں انسٹال کرنے کا طریقہ
- درخواستیں حاصل کریں اور پوسٹ کریں
- یو آر ایل میں گزرنے والے پیرامیٹرز
- حیثیت کا کوڈ
- جوابی مواد
- ملٹی پارٹ فائل اپ لوڈ
- کوکیز اور ہیڈرز
- سیشن آبجیکٹ
- نقائص اور مستثنیات
ازگر کی درخواستیں کیا ہیں؟
ازگر کی درخواستیں کینتھ ریٹس نے لکھی تھیں اور اپاچی 2.0 کے تحت لائسنس یافتہ تھے۔ یہ ایک انسانی دوستانہ HTTP لائبریری ہے کیونکہ سرکاری دستاویزات کے صفحے پر اس کا ذکر ہے۔ یہ استعمال کرنا آسان ہے اور بنیادی طور پر ہر طرح کی HTTP درخواستوں کو بنانے کے لئے استعمال کیا جاتا ہے۔ مندرجہ ذیل کچھ جدید خصوصیات ہیں جن کے ساتھ درخواستیں آتی ہیں:
- زندہ اور کنیکشن پولنگ رکھیں
- بین الاقوامی ڈومینز اور یو آر ایل
- کوکی ثابت قدمی کے ساتھ سیشن
- براؤزر طرز کی SSL توثیق
- خودکار مواد کو ضابطہ بندی کرنا
- بنیادی / ڈائجسٹ کی توثیق
- خوبصورت کلیدی / قدر والی کوکیز
- خودکار decompression
- یونیکوڈ رسپانس باڈیز
- HTTPs پراکسی اعانت
- ملٹی پارٹ فائل اپ لوڈز
- سلسلہ بند ڈاؤن لوڈ
- کنکشن ٹائم آؤٹ
- منقطع درخواستیں
ازگر کی درخواستیں کیوں استعمال کریں؟
جب بات آتی ہے کہ ہم ازگر کی درخواستیں کیوں استعمال کرتے ہیں؟ وجہ بہت آسان ہے۔ ازگر کی درخواستوں کا استعمال کرتے ہوئے ، آپ کو اپنے یو آر ایل میں دستی طور پر سوالات شامل کرنے کی ضرورت نہیں ہے اور پوسٹ کوائف فارم-انکوڈ کو شامل نہیں کرنا ہوگا۔ کسی بھی قسم کی HTTP درخواست کرتے وقت یہ ہمارا کام آسان بناتا ہے۔اب جب ہم ازگر کی درخواستوں سے واقف ہیں اور ہم ان کو ازگر میں کیوں استعمال کرتے ہیں ، تو ہم یہ سمجھنے کی کوشش کرتے ہیں کہ ہم اپنے پروجیکٹ یا سسٹم پر درخواستیں کیسے انسٹال کریں گے۔ازگر درخواستیں انسٹال کرنے کا طریقہ
تنصیب کا حصہ بھی بہت آسان ہے۔ اگر آپ کے سسٹم پر پپینیو سیٹ اپ انسٹال ہے تو ، آپ ٹرمینل میں مندرجہ ذیل کمانڈ کو آسانی سے چلا سکتے ہیں۔install پائپ انسٹال کی درخواستیں
یہ آپ کے سسٹم میں درخواستوں کی لائبریری انسٹال کرے گا۔ درخواستوں کو انسٹال کرنے کے لئے ایک اور نقطہ نظر ہے۔ اگر آپ پیچرم استعمال کررہے ہیں تو ، آپ ترتیبات میں پروجیکٹ ترجمان کی درخواستیں شامل کرسکتے ہیں۔ یہ ہمارے منصوبے پر لائبریری کو انسٹال کرنے کی صورت میں ٹرمینل کی طرح ہی کام کرتا ہے۔اب جب ہم تنصیب کا کام انجام دے رہے ہیں ، تو ہم یہ سمجھنے کی کوشش کرتے ہیں کہ ہم ازگر میں درخواستیں کیسے حاصل کریں گے اور پوسٹ کریں گے۔درخواستیں حاصل کرنے اور پوسٹ کرنے کا طریقہ کیسے کریں؟
حاصل کی درخواست بنیادی طور پر سرور سے ڈیٹا کی درخواست کرنے کے لئے استعمال کی جاتی ہے۔ حاصل کرنے کی درخواست کرنے کے لئے ترکیب ذیل ہے۔درآمد کی درخواستوں res = درخواست.get ('url') #res یہاں جوابی شے ہے۔سرور پر کارروائی کرنے کے لئے اعداد و شمار جمع کرنے کے لئے پوسٹ کی درخواست کا استعمال کیا جاتا ہے۔ پوسٹ کی درخواست کرنے کے لئے ترکیب ذیل میں ہے۔
درآمد کی درخواستوں کو پے لوڈ = {'کی 1': 'ویلیو 1'} ریز = درخواستوں.پوسٹ ('یو آر ایل' ، ڈیٹا = پے لوڈ)اب جب ہم جانتے ہیں کہ ہم کس طرح درخواستیں حاصل کرسکتے ہیں اور پوسٹ کرسکتے ہیں تو ، اس پر ایک نظر ڈالیں کہ ہم حاصل کی درخواست کا استعمال کرتے ہوئے یو آر ایل میں پیرامیٹرز کیسے منتقل کرسکتے ہیں۔
ایک ارل میں پیرامیٹرز پاس کرنا
یو آر ایل میں پیرامیٹرز پاس کرنا اتنا ہی آسان ہے جتنا کہ گیٹ ریکوسٹ کریں۔ یو آر ایل میں پیرامیٹرز کو پاس کرنے کے لئے مندرجہ ذیل ایک مثال ہے۔درآمد کی درخواستوں کو پے لوڈ = {'کی 1': 'ویلیو 1' ، 'کیی 2': 'ویلیو 2'} ریز = گذارشات.جیٹ ('یو آر ایل' ، پیرامس = پے لوڈ) پرنٹ (ریس.ورل) # یہ پیرامیٹرز کے ساتھ یو آر ایل پرنٹ کرے گا۔ حاصل کی درخواست کے ذریعے منظور
حیثیت کا کوڈ
ہم اسٹیٹس کوڈ کو بھی چیک کرسکتے ہیں ، اسٹیٹس کوڈ کو چیک کرنے کے لئے درج ذیل کوڈ ہے۔
درخواستوں کو درآمد کریں res = विनंती.get ('url') پرنٹ (res.status_code ())اگر کوڈ 200 واپس کرتا ہے تو اس کا مطلب ہے کہ کوئی غلطی نہیں ہے اور درخواست بالکل ٹھیک ہے۔ اگر ہم غلط درخواست کرتے ہیں تو ، کوڈ 404 یا 505 جیسے کوڈ کو لوٹائے گا جو HTTP کی غلطی کو بڑھا دے گا۔
جوابی مواد
ہم سرور کے جواب کے مندرجات کو بھی پڑھ سکتے ہیں۔ لائبریری سرور سے موجود مواد کو خود بخود ڈی کوڈ کر دے گی۔درخواستوں کو درآمد کریں res = विनंती.get ('url') پرنٹ (res.content)
درخواستوں میں ایک بلٹ ان جیسن ڈویکڈر بھی ہوتا ہے۔
درآمد کی درخواستوں res = درخواست.get ('url') پرنٹ (res.json ()) # یہ ایک json فارمیٹ میں جواب ملے گا
ملٹی پارٹ فائل اپ لوڈ
درخواستوں کا استعمال کرتے ہوئے ملٹی پارٹ فائلوں کو اپ لوڈ کرنا بہت آسان ہے۔درخواستیں فائلیں = {'فائل' درآمد کریں: کھولیں ('فائل کا نام' ، 'آر بی') = ریز = درخواستیں۔ پوسٹ ('یو آر ایل' ، فائلیں = فائلیں) پرنٹ کریں (ریز ٹیکس)متعدد فائلیں بھیجنے کے ل we ہم فائلوں کے پیرامیٹر میں متعدد فائلوں کی وضاحت کریں گے۔
کوکیز اور ہیڈرز
ہم جوابی آبجیکٹ کا استعمال کرکے سرور کے رسپانس ہیڈرز اور کوکیز دیکھ سکتے ہیں۔ سرور کے ہیڈرز کو دیکھنے کے لئے مندرجہ ذیل کوڈ ہے۔درخواستوں کو درآمد کریں res = विनंती.get ('url') پرنٹ (res.headers)ہم اپنی مرضی کے مطابق ہیڈر کو بھی یو آر ایل میں منتقل کرسکتے ہیں۔ کوڈ پر ایک نظر ڈالیں۔
درخواستوں کے ہیڈروں کو درآمد کریں = 1 'کی 1': 'ویلیو 1'} ریز = درخواست. جیٹ ('یو آر ایل' ، ہیڈر = ہیڈر) پرنٹ (ریس.ہیڈر)درخواستیں کسٹم ہیڈرز کی بنیاد پر اپنے طرز عمل کو تبدیل نہیں کرتی ہیں۔ وہ آسانی سے آخری درخواست پر منتقل کردیئے جاتے ہیں۔ کوکیز جوابی آبجیکٹ کا استعمال کرتے ہوئے بھی دیکھا جاسکتا ہے۔
درآمد کی درخواستیں # ہماری اپنی کوکیز کو پاس کرنے کے ل we ہم کوکیز پیرامیٹر کوکیز = ڈیک (کوکیز = 'ورکنگ') ریز = درخواستوں کو استعمال کرسکتے ہیں۔
کوکیز کو ایک درخواست کوکی جار میں لوٹا دیا جاتا ہے ، جو ایک لغت کی طرح کام کرتا ہے بلکہ مزید مکمل انٹرفیس بھی پیش کرتا ہے ، جو متعدد ڈومینز یا راستوں پر استعمال کے لئے موزوں ہے۔
سیشن آبجیکٹ
سیشن آبجیکٹ آپ کو درخواستوں میں کچھ پیرامیٹرز برقرار رکھنے کی اجازت دیتا ہے۔- سیشن مثال کے طور پر کی گئی تمام درخواستوں پر کوکیز برقرار رکھتا ہے
- urllib3 کنکشن پولنگ کا استعمال کریں
- نمایاں کارکردگی میں اضافہ
- سیشن آبجیکٹ میں مرکزی درخواستوں کے API کے تمام طریقے ہیں
s = درخواست.session () s.get ('url') res = s.get ('url') پرنٹ (res.text)
نقائص اور مستثنیات
عجیب درخواست میں اٹھائے جانے والے نقائص اور مستثنیات مندرجہ ذیل ہیں۔- نیٹ ورک کی پریشانی کی صورت میں درخواستوں سے کنکشن ایرر کی رعایت بڑھ جاتی ہے۔
- جب ناکام حیثیت کا کوڈ ہو تو رسپانس.ریائس_ور_سٹاٹس () ایک HTTP غلطی پیدا کرے گا۔
- اگر کوئی ٹائم آؤٹ ہوتا ہے تو ، یہ ٹائم آؤٹ سے مستثنیٰ ہوگا
- اگر درخواست ری ڈائریکٹس کی زیادہ سے زیادہ تعداد کی تشکیل شدہ تعداد سے زیادہ ہو تو TooManyRedirects استثناء اٹھایا جاتا ہے۔