عن المشروع
# odp-stockholm
عميل Python غير متزامن لمجموعات البيانات المفتوحة في ستوكهولم، السويد. يتواصل العميل مع واجهة برمجة تطبيقات منصة البيانات المفتوحة (Open Data Platform API) الخاصة بالمدينة بحيث يمكن لتطبيقات Python سحب مجموعات البيانات دون الحاجة إلى كتابة طلبات HTTP يدوياً.
## ماذا يفعل
تم بناء الحزمة في الأصل لجلب بيانات المواقف فقط، ولكن تم تنظيم قاعدة الكود عمداً بحيث يمكن إضافة مجموعات بيانات أخرى من نفس المنصة لاحقاً. يوثق ملف README حالياً مجموعة بيانات واحدة:
- **مواقف ذوي الاحتياجات الخاصة** (rörelsehindrade förare med särskilt tillstånd) — حوالي 2045 موقعاً.
## المتطلبات والوصول
يتطلب استخدام البيانات مفتاح API، والذي يمكن طلبه من الموقع الإلكتروني للمنصة. يستهدف المشروع Python 3.12 أو أحدث، ويتم توزيعه على PyPI باسم `odp-stockholm`.
## التثبيت والاستخدام
```bash
pip install odp-stockholm
```
يتم استخدام العميل كمدير سياق غير متزامن (async context manager). يقوم المثال الموثق بإنشاء مثيل من `ParkingStockholm` باستخدام مفتاح API واستدعاء `disabled_parkings(limit=10)`، وطباعة المواقع المسترجعة.
## حقول مجموعة البيانات
تقبل الطلبات معامل `limit` (الافتراضي 10). تتضمن السجلات المسترجعة:
- `location_id` و `location_type` و `number` لعدد مواقف السيارات
- `street` و `address` و `district`
- `parking_rate` و `parking_rules` (رابط للوائح مواقف السيارات في ستوكهولم)
- `valid_from` و `valid_to` (قد يكون الأخير `None`)
- `coordinates` كقائمة من الأرقام العشرية (floats)
## إعداد التطوير
يستخدم المشروع Poetry لإدارة التبعيات ويمكن فتحه في VS Code Dev Container أو GitHub CodeSpace. يتم فحص الالتزامات (commits) واختبارها من خلال إطار عمل `prek` (`poetry run prek install` و `poetry run prek run --all-files`). تستخدم الاختبارات pytest، بما في ذلك اختبارات لقطات syrupy التي يمكن تحديثها باستخدام `poetry run pytest --snapshot-update`.
## الترخيص
تم إصداره بموجب رخصة MIT، حقوق الطبع والنشر Klaas Schoute (2023–2026).
## ملاحظات للمقيمين
هذه مكتبة متخصصة في الوصول إلى البيانات وليست تطبيقاً كاملاً: تكمن قيمتها في توفير وصول غير متزامن ومحدد الأنواع (typed) إلى مصدر بيانات مفتوح بلدي، وتوفير نموذج يمكن توسيعه ليشمل مجموعات بيانات أخرى في ستوكهولم. المشروع غير تابع لمدينة ستوكهولم ولا يحظى بتأييدها؛ يقوم المستخدمون بتوفير مفتاح API الخاص بهم ويخضعون لشروط المنصة.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.