Saltar a contenido

Export

Descarga del padrón CDMX en formato CSV crudo. Útil para análisis con pandas a gran escala.

Namespace

datos_mexico.endpoints.export.ExportNamespace

ExportNamespace(http: HttpClient)

Bases: BaseNamespace

Descarga del padrón CDMX en formato CSV crudo.

El endpoint /api/v1/export/csv filtra por los mismos campos que client.cdmx.servidores_lista() pero devuelve texto CSV (no JSON) listo para archivar o cargar con pandas.read_csv. El método csv() devuelve un str con el contenido completo.

Examples:

>>> from datos_mexico import DatosMexico
>>> with DatosMexico() as client:
...     csv_text = client.export.csv(sector_id=7, per_page=100)
...     # Escribir a archivo:
...     # Path("padron.csv").write_text(csv_text)

csv

csv(
    *,
    sector_id: int | None = None,
    sexo: str | None = None,
    edad_min: int | None = None,
    edad_max: int | None = None,
    sueldo_min: float | None = None,
    sueldo_max: float | None = None,
    puesto_search: str | None = None,
    tipo_contratacion_id: int | None = None,
    tipo_personal_id: int | None = None,
    universo_id: int | None = None,
    page: int | None = None,
    per_page: int | None = None,
    order_by: str | None = None,
    order: str | None = None,
    use_cache: bool = True,
) -> str

Descarga el padrón CDMX como texto CSV.

Endpoint: GET /api/v1/export/csv

El response es text/csv con headers id,nombre,apellido_1,... y una fila por servidor. La API ignora per_page para algunos filtros y puede retornar el padrón completo (~250k filas, ~9 MB); si quieres paginar realmente la descarga, combina page con un per_page menor que el total filtrado.

Parameters:

Name Type Description Default
sector_id int | None

ID del sector. Ver client.cdmx.catalogo_sectores().

None
sexo str | None

"FEMENINO", "MASCULINO" o "NA".

None
edad_min int | None

Edad mínima inclusiva.

None
edad_max int | None

Edad máxima inclusiva.

None
sueldo_min float | None

Sueldo bruto mínimo en MXN.

None
sueldo_max float | None

Sueldo bruto máximo en MXN.

None
puesto_search str | None

Texto a buscar en el puesto.

None
tipo_contratacion_id int | None

ID de tipo de contratación.

None
tipo_personal_id int | None

ID de tipo de personal.

None
universo_id int | None

ID de universo presupuestal.

None
page int | None

Número de página (1-indexed). None deja default API.

None
per_page int | None

Filas por página. None deja default API.

None
order_by str | None

Campo para ordenar.

None
order str | None

"asc" o "desc".

None
use_cache bool

Si True (default) consulta y popula la caché. El CSV puede pesar varios MB; pasar False evita cachear payloads grandes en memoria.

True

Returns:

Type Description
str

str con el CSV completo (header + rows).

Raises:

Type Description
NetworkError

Falla de red.

TimeoutError

Timeout esperando respuesta.

ApiError

La API respondió con status 4xx/5xx.