Skip to content

feat(immobiliare): add Immobiliare.it client (0.16.0)#12

Merged
0xGhostCasper merged 2 commits into
mainfrom
scr-101-immobiliare-sdk
Jul 8, 2026
Merged

feat(immobiliare): add Immobiliare.it client (0.16.0)#12
0xGhostCasper merged 2 commits into
mainfrom
scr-101-immobiliare-sdk

Conversation

@0xGhostCasper

Copy link
Copy Markdown
Member

Summary

Adds an async Immobiliare client to the ScrapeBadger Python SDK, covering the Immobiliare Group (immobiliare.it, indomio.es, indomio.gr, immotop.lu).

New module scrapebadger.immobiliare

8 endpoints, all async and strongly typed with frozen Pydantic models:

  • autocomplete — resolve free-text place → geography ids
  • search — list listings by location or explicit region/province/city ids (contract sale|rent)
  • get_listing — full single-listing detail
  • get_agency / get_agency_listings — agency profile + active listings
  • price_stats — historical €/m² time series
  • list_markets / reference — supported markets + filter enums

Wiring

  • ScrapeBadger.immobiliare lazy property, mirroring the other scraper clients.
  • ImmobiliareClient + all response/nested models exported from the package root under Immobiliare* aliases (added to __all__).
  • Robustness fix in _internal/client.py: guard the application-level error check as isinstance(data, dict) and data.get("error") so a bare-JSON-array body (e.g. /markets) no longer crashes.
  • README: added the Immobiliare row to the Available APIs table.

Version

Minor bump 0.15.70.16.0 (new module): pyproject.toml, __version__, and SDK_VERSION.

Verification

  • uv run pytest → 609 passed, 77 skipped (e2e need an API key)
  • uv run ruff check src/ → clean
  • Smoke: client.immobiliare lazy property resolves to ImmobiliareClient

Linear SCR-101. Publishes to PyPI on GitHub Release after merge.

@0xGhostCasper
0xGhostCasper merged commit f58e690 into main Jul 8, 2026
6 checks passed
@0xGhostCasper
0xGhostCasper deleted the scr-101-immobiliare-sdk branch July 8, 2026 07:50
@codecov

codecov Bot commented Jul 8, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 89.53488% with 27 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
src/scrapebadger/immobiliare/client.py 36.11% 23 Missing ⚠️
src/scrapebadger/client.py 57.14% 3 Missing ⚠️
src/scrapebadger/_internal/client.py 50.00% 0 Missing and 1 partial ⚠️

📢 Thoughts on this report? Let us know!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants