RENTA is a Python library for real estate investment analysis in Buenos Aires. It combines Airbnb market data, Zonaprop listings, geospatial enrichment, and AWS Bedrock summaries to deliver investment-ready datasets.
Features
- Download and normalize Airbnb datasets from InsideAirbnb with freshness caching.
- Scrape or ingest Zonaprop listings, capturing pricing, engagement, and location data.
- Match properties to nearby Airbnb listings with configurable spatial filters.
- Generate Claude Sonnet 4.5 summaries in Argentine Spanish through AWS Bedrock.
- Export enriched results to pandas, CSV, or JSON with consistent schemas.
Installation
pip install renta
Quick Start
from renta import RealEstateAnalyzer
analyzer = RealEstateAnalyzer()
airbnb = analyzer.download_airbnb_data(force=True)
properties = analyzer.scrape_zonaprop(
"https://www.zonaprop.com.ar/inmuebles-venta-palermo-2-dormitorios-50000-130000-dolar.html"
)
enriched = analyzer.enrich_with_airbnb(properties)
summaries = analyzer.generate_summaries(enriched)
analyzer.export(enriched, format="csv", path="investment_analysis.csv")
AWS Bedrock Requirements
Claude Sonnet 4.5 access is required for AI summaries.
export AWS_ACCESS_KEY_ID="YOUR_KEY"
export AWS_SECRET_ACCESS_KEY="YOUR_SECRET"
export AWS_REGION="us-east-1"
Or configure ~/.aws/credentials or an IAM role. In AWS Console → Amazon Bedrock → Model access, request us.anthropic.claude-sonnet-4-5-20250929-v1:0.
Configuration
Create config.yaml to override defaults in renta/data/default_config.yaml.
data:
cache_dir: "~/.renta/cache"
freshness_threshold_hours: 24
airbnb:
matching:
radius_km: 0.3
min_nights_threshold: 7
aws:
region: "us-east-1"
logging:
level: "INFO"
Load with RealEstateAnalyzer(config_path="config.yaml") or set RENTA_CONFIG=/path/config.yaml. Configuration is validated against renta/schemas/config_schema.json.
Troubleshooting
- Download issues: call
analyzer.download_airbnb_data(force=True). - Zonaprop blocked: use
html_path="saved_results.html"with previously saved HTML. - Bedrock errors: verify credentials with
aws sts get-caller-identityand confirm model access. - Schema validation failures: run
RealEstateAnalyzer(config_path="config.yaml")to surface detailed errors.
Security and Compliance
Logs scrub PII when enabled in config, credentials are never persisted, and scraping obeys configurable rate limits. Review renta/data/legal_notice.md and LEGAL_COMPLIANCE.md for jurisdiction-specific guidance. Users are responsible for complying with local laws, Zonaprop terms, and AWS policies.
Documentation and Examples
- API reference and guides: https://renta.readthedocs.io
- Example scripts and notebooks:
examples/ - Default prompts and configuration templates ship with the package.
Contributing
We welcome pull requests. Install development tooling with:
pip install -e ".[dev]"
pytest
black . && isort . && flake8
See CONTRIBUTING.md for workflow details.
License
MIT License – see LICENSE.
RENTA supports research and exploratory investment analysis. Always verify property data independently and consult legal counsel when deploying scraping or AI-driven workflows in production.
Metadata
Release files for renta 0.1.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| renta-0.1.2.tar.gz | 110.6 kB | Without provenance | Details for renta-0.1.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| renta-0.1.2-py3-none-any.whl | Python 3 | none | any | Details for renta-0.1.2-py3-none-any.whl |
Total release size: 178.8 kB
Release files / renta-0.1.2.tar.gz
| Download URL | renta-0.1.2.tar.gz |
|---|---|
| Size | 110.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
e76f8bedadea8af7e3ff63212b9628aec1689efd0f300dfce02904377bc033a9
|
|
BLAKE2b-256 checksum How to use checksums |
1517ce7861935461d10a74f712569c72614981ba3f3e84abb4a7e8e51a38208d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.2
|
Release files / renta-0.1.2-py3-none-any.whl
| Download URL | renta-0.1.2-py3-none-any.whl |
|---|---|
| Size | 68.3 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
c7a6f21ab58391d90016e1cba0f4c111559d4eaffeb82d4b6baec08abb606e26
|
|
BLAKE2b-256 checksum How to use checksums |
6ff8e0dda5566a3e5a8479f5d1d10de4cdddecf94ab12084428ae16698ddcabd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.2
|
Security for renta 0.1.2
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.