تقنية

netrc في بايثون: من أين جاءت بيانات المضيف الغائب؟

اسم المضيف ثم الاسم الافتراضي
نتيجتا مثالنا. [1] [2]

نقرأ ملفًا مؤقتًا بأسماء مخترعة، دون كلمات مرور. [1] [2]

الخلاصة السريعة

إذا غاب المضيف، تأتي البيانات من default إن وجد. [1] [2]

  • authenticators يعيد بيانات المضيف المطابق أولًا. [1] [2]
  • عند غيابه، يستخدم مدخل default. [1] [2]
  • إذا غاب الاثنان، يعيد None. [1] [2]
  • نطبع اسم الدخول فقط: OWN ثم FALLBACK. [1] [2]
  • نحدد ملفنا صراحة؛ لا نقرأ ملف المنزل. [1] [2]
  • اختبرنا 3.12.14؛ لا اتصال أو تحقق من دخول. [1] [2]

المثال

from netrc import netrc
from tempfile import TemporaryDirectory
from pathlib import Path
with TemporaryDirectory() as d:
 p=Path(d)/'own.netrc'
 p.write_text('machine own.invalid login OWN\n'
              'default login FALLBACK\n',encoding='utf-8')
 n=netrc(str(p))
 print(n.authenticators('own.invalid')[0])
 print(n.authenticators('other.invalid')[0])

[1] [2]

مصدر الاسم

الاسم الأول من مدخل المضيف المحدد؛ الثاني من الافتراضي. وجود نتيجة لا يثبت وجود حساب صالح لدى خادم. [1] [2]

عند غياب المضيف والافتراضي تعاد None
حالة إضافية مؤلفة. [1] [2]

الحدود

الملف مؤلف للاختبار ويُحذف بعده. لا نوصي بطريقة لحفظ الأسرار ولا نفحص صلاحيات ملف مستخدم أو تسجيل الدخول. [1] [2]

المراجع

  1. Python: netrc
  2. CPython3.12.14: netrc
  3. موضوع تك: لغة بايثون — مفردات
  4. موضوع تك: تطبيقات بايثون — مفردات

أُعدّ هذا المقال بمساعدة الذكاء الاصطناعي، وخضع لمراجعة ذاتية بالأداة نفسها. لا يُنسب إلى مراجع بشري أو خبير مستقل. منهجية المحتوى.