프로젝트 소개

## 개요 `liege`는 벨기에 리에주 오픈 데이터 플랫폼에서 게시한 공개 데이터셋을 위한 비동기 Python 클라이언트입니다. 이 라이브러리는 플랫폼의 API를 래핑하여, Python 코드(일반적으로 비동기 이벤트 루프 내부)가 원시 HTTP 요청 및 JSON 파싱을 처리하는 대신 타입이 지정된 객체로 레코드를 가져올 수 있도록 합니다. 이 패키지는 원래 주차 데이터만 검색하기 위해 작성되었으나, README에 따르면 동일한 플랫폼의 추가 데이터셋을 쉽게 추가할 수 있도록 코드 베이스가 구조화되어 있습니다. ## 설치 ```bash pip install liege ``` ## 지원 데이터셋 README에는 두 가지 데이터셋이 문서화되어 있습니다: - **장애인 주차 공간 / Stationnement PMR** — 1,062개 위치. - **주차장 / Les parkings voitures hors voirie** — 32개 위치. 각 데이터셋은 반환되는 결과 수를 제어하는 `limit` 매개변수(기본값 10)를 사용하여 쿼리합니다. ### 장애인 주차 필드 `spot_id` (int), `number` (int), `address` (str), `municipality` (str), `city` (str), `status` (str), `longitude` (float), `latitude` (float), `created_at` (datetime), `updated_at` (datetime). ### 주차장 필드 `name` (string), `capacity` (int), `charging_stations` (int), `address` (string), `municipality` (string), `city` (string), `provider` (string), `schedule` (string), `longitude` (float), `latitude` (float), `created_at` (datetime), `updated_at` (datetime). ## 사용 예시 클라이언트는 비동기 컨텍스트 매니저로 설계되었습니다: ```python import asyncio from liege import ODPLiege async def main() -> None: async with ODPLiege() as client: garages = await client.garages(limit=10) disabled_parkings = await client.disabled_parkings(limit=10) print(garages) print(disabled_parkings) asyncio.run(main()) ``` ## 문서화된 사용 사례 README는 사용자 및 지방 자치 단체가 제공한 데이터를 사용하여 장애인 주차 공간을 지도에 표시하는 웹사이트인 NIPKaart.nl을 언급합니다. 이 사이트는 주로 네덜란드에서 운영되지만 해외 데이터를 처리할 계획을 밝혔으며, 이 클라이언트가 바로 그 역할에 적합합니다. ## 개발 설정 이 프로젝트는 의존성 관리를 위해 Poetry를 사용하며, Python 3.12 이상과 Poetry가 필요합니다. 클론 후 다음을 실행하십시오: ```bash poetry install ``` Poetry는 기본적으로 의존성을 위한 가상 환경을 생성합니다. 린팅 및 테스트는 `prek` 프레임워크를 통해 연결되어 있으며, 각 커밋마다 체크를 실행합니다: ```bash poetry run prek install poetry run prek run --all-files ``` 테스트는 pytest를 사용하며, 스냅샷 테스트는 syrupy로 처리합니다: ```bash poetry run pytest poetry run pytest --snapshot-update ``` Dev Container 설정이 제공되므로 Visual Studio Code 또는 GitHub CodeSpace에서 환경을 직접 시작할 수 있습니다. ## README의 프로젝트 신호 배지 블록은 실험적 프로젝트 단계, 지속적인 유지 관리, 활발한 커밋 활동, GitHub에 게시된 릴리스, 다운로드 통계가 포함된 PyPI 배포, 빌드 및 타이핑 워크플로 상태, 코드 커버리지 보고 및 OpenSSF Scorecard 배지를 나타냅니다. 또한 별도의 CONTRIBUTING.md에 기여 가이드라인이 문서화되어 있으며, MIT 라이선스(copyright 2022–2026 Klaas Schoute)로 릴리스되었습니다. ## 적합성 이 라이브러리는 소규모의 단일 목적 API 클라이언트 라이브러리입니다. 비동기 Python 애플리케이션 내에서 리에주 오픈 데이터(현재는 주차 관련)가 필요할 때 유용하며, 동일한 ODP 플랫폼의 다른 데이터셋을 래핑하기 위한 템플릿으로도 유용합니다. 이는 데이터 저장소, 서버 또는 최종 사용자 애플리케이션이 아닙니다.