الوحدة urllib.error()‎‎ في بايثون

من موسوعة حسوب
< Python‏ | urllib
مراجعة 21:58، 23 يناير 2019 بواسطة Mohammed Taher (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:الوحدة <code>urllib.error()‎‎</code> في بايثون}}</noinclude> تعرّف الوحدة urllib.error الأصناف الخاص...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)
اذهب إلى التنقل اذهب إلى البحث


تعرّف الوحدة urllib.error الأصناف الخاصة بالاستثناءات التي تُطلقها الوحدة urllib.request.

الصنف الأساسي في هذه الوحدة هو URLError.

تطلق الوحدة urllib.error الاستثناءات التالية:

الاستثناء urllib.error.URLError

تُطلق أصناف المعالجة هذا الاستثناء (أو الاستثناءات المشتقة منه) عند وقوعها في مشكلة معيّنة. هذا الاستثناء هو صنف متفرّع من الاستثناء OSError.

reason

سبب حدوث هذا الخطأ. يمكن أن تكون رسالة على هيئة سلسلة نصية أو نسخة من استثناء آخر.

ملاحظات: أصبح URLError صنفًا متفرّعًا من الصنف OSError عوضًا عن IOError في الإصدار 3.3 من بايثون.

الاستثناء urllib.error.HTTPError

على الرغم من كون HTTPError استثناءً (متفرّعًا من الصنف URLError) إلا أنّ بالإمكان استخدامه كقيمة معادة شبيهة بالملفات (كتلك المعادة بواسطة الدالة urlopen()‎). يمكن الاستفادة من هذا السلوك عند معالجة أخطاء HTTP الخارجية exotic مثل طلبات الاستيثاق.

code

شيفرة حالة HTTP حسب ما هو معرّف في المعيار RFC 2616. ترتبط هذه القيمة العددية بالقيمة الموجودة في قاموس الشيفرات وكما هو موجود في http.server.BaseHTTPRequestHandler.responses.

reason

عادة ما تكون سلسلة نصية توضّح سبب حدوث هذا الخطأ.

headers

ترويسات استجابة HTTP لطلب HTTP الذي تسبب في حدوث الخطأ HTTPError.

ملاحظة: هذا الاستثناء جديد في الإصدار 3.4 من بايثون.

الاستثناء urllib.error.ContentTooShortError(msg, content)

يُطلق هذا الاستثناء عندما تكتشف الدالة urlretrieve() أن كمية البيانات المحمّلة أقل من الكمية المتوقعة (المعطاة بواسطة الترويسة Content-Length). تخزّن الخاصية content البيانات المحمّلة (والتي يفترض أن تكون مقطوعة truncated).

مصادر