# fluximmo/api-immo-scrapper-leboncoin-pap architecture

> Architecture diagram of the GitHub repository fluximmo/api-immo-scrapper-leboncoin-pap, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-14). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/fluximmo/api-immo-scrapper-leboncoin-pap
- Repository: https://github.com/fluximmo/api-immo-scrapper-leboncoin-pap

## Overview

This repository contains deprecated V1 Scrapy spiders for collecting real-estate listings, not the full Fluximmo service described in the README. Each adapter fetches listing pages, follows detail-page requests, enriches an Offer, and saves it. The four source-specific adapters are the only implementation present; the shared spider base and data models are referenced but absent from the tree. Other documented capabilities, including 20+ portals and real-time analysis, are not implemented here.

Main entry points: [`leboncoin.py`](https://github.com/fluximmo/api-immo-scrapper-leboncoin-pap/blob/main/leboncoin.py) (LeBonCoin spider), [`explorimmo.py`](https://github.com/fluximmo/api-immo-scrapper-leboncoin-pap/blob/main/explorimmo.py) (Explorimmo spider), [`meilleursagents.py`](https://github.com/fluximmo/api-immo-scrapper-leboncoin-pap/blob/main/meilleursagents.py) (MeilleursAgents spider), [`pap.py`](https://github.com/fluximmo/api-immo-scrapper-leboncoin-pap/blob/main/pap.py) (PAP spider)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_adapters["Portal adapters"]
  node_leboncoin["LeBonCoin spider<br/>[leboncoin.py]"]
  node_explorimmo["Explorimmo spider<br/>[explorimmo.py]"]
  node_meilleursagents["MeilleursAgents spider<br/>[meilleursagents.py]"]
  node_pap["PAP spider<br/>[pap.py]"]
end

node_crawler(("Scrapy runtime"))
node_base["Shared spider base"]
node_offers[("Offer records")]
node_leboncoin_site{{"LeBonCoin site"}}
node_explorimmo_site{{"Explorimmo site"}}
node_meilleursagents_site{{"MeilleursAgents site"}}
node_pap_site{{"PAP site"}}

node_crawler -->|"runs"| node_leboncoin
node_crawler -->|"runs"| node_explorimmo
node_crawler -->|"runs"| node_meilleursagents
node_crawler -->|"runs"| node_pap
node_leboncoin -->|"fetches"| node_leboncoin_site
node_explorimmo -->|"fetches"| node_explorimmo_site
node_meilleursagents -->|"fetches"| node_meilleursagents_site
node_pap -->|"fetches"| node_pap_site
node_leboncoin -->|"inherits"| node_base
node_explorimmo -->|"inherits"| node_base
node_meilleursagents -->|"inherits"| node_base
node_pap -->|"inherits"| node_base
node_leboncoin -->|"saves listings"| node_offers
node_explorimmo -->|"saves listings"| node_offers
node_meilleursagents -->|"saves listings"| node_offers
node_pap -->|"saves listings"| node_offers

click node_leboncoin "https://github.com/fluximmo/api-immo-scrapper-leboncoin-pap/blob/main/leboncoin.py"
click node_explorimmo "https://github.com/fluximmo/api-immo-scrapper-leboncoin-pap/blob/main/explorimmo.py"
click node_meilleursagents "https://github.com/fluximmo/api-immo-scrapper-leboncoin-pap/blob/main/meilleursagents.py"
click node_pap "https://github.com/fluximmo/api-immo-scrapper-leboncoin-pap/blob/main/pap.py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_leboncoin,node_explorimmo,node_meilleursagents,node_pap toneBlue
class node_crawler,node_base,node_leboncoin_site,node_explorimmo_site,node_meilleursagents_site,node_pap_site toneIndigo
class node_offers toneAmber
```

## Components

### Portal adapters

- [LeBonCoin spider](https://github.com/fluximmo/api-immo-scrapper-leboncoin-pap/blob/main/leboncoin.py): `leboncoin.py`
- [Explorimmo spider](https://github.com/fluximmo/api-immo-scrapper-leboncoin-pap/blob/main/explorimmo.py): `explorimmo.py`
- [MeilleursAgents spider](https://github.com/fluximmo/api-immo-scrapper-leboncoin-pap/blob/main/meilleursagents.py): `meilleursagents.py`
- [PAP spider](https://github.com/fluximmo/api-immo-scrapper-leboncoin-pap/blob/main/pap.py): `pap.py`

### Other components

- **Scrapy runtime**
- **Shared spider base**
- **Offer records**
- **LeBonCoin site**
- **Explorimmo site**
- **MeilleursAgents site**
- **PAP site**

## Connections

- Scrapy runtime → LeBonCoin spider: runs (evidence: `leboncoin.py`)
- Scrapy runtime → Explorimmo spider: runs (evidence: `explorimmo.py`)
- Scrapy runtime → MeilleursAgents spider: runs (evidence: `meilleursagents.py`)
- Scrapy runtime → PAP spider: runs (evidence: `pap.py`)
- LeBonCoin spider → LeBonCoin site: fetches (evidence: `leboncoin.py`)
- Explorimmo spider → Explorimmo site: fetches (evidence: `explorimmo.py`)
- MeilleursAgents spider → MeilleursAgents site: fetches (evidence: `meilleursagents.py`)
- PAP spider → PAP site: fetches (evidence: `pap.py`)
- LeBonCoin spider → Shared spider base: inherits (evidence: `leboncoin.py`)
- Explorimmo spider → Shared spider base: inherits (evidence: `explorimmo.py`)
- MeilleursAgents spider → Shared spider base: inherits (evidence: `meilleursagents.py`)
- PAP spider → Shared spider base: inherits (evidence: `pap.py`)
- LeBonCoin spider → Offer records: saves listings (evidence: `leboncoin.py`)
- Explorimmo spider → Offer records: saves listings (evidence: `explorimmo.py`)
- MeilleursAgents spider → Offer records: saves listings (evidence: `meilleursagents.py`)
- PAP spider → Offer records: saves listings (evidence: `pap.py`)
