Skip to main content

CotaHoraria

Introdução

Função responsável por buscar os dados de cota horária de uma estação hidrológica com suporte a cache, controle de timeout e fallback para estruturas aninhadas inválidas.


Índice

  1. Descrição Geral
  2. Assinatura da Função
  3. Fetch cota horaria

Descrição Geral

A função fetch_cota_horaria realiza uma chamada assíncrona à API de cotas horárias para um código de estação específico. A resposta é armazenada em cache para otimizar chamadas subsequentes. Suporta os tipos de estação 'regua' e 'pcd', retornando os dados estruturados como um pandas.DataFrame.

Utiliza:

  • Cache inteligente via cached_fetch
  • Decodificação eficiente com msgspec
  • Logs com logging
  • tornado.httpclient para chamadas assíncronas
  • Estruturas de dados definidas em CotaHR e CotaHPCD

Assinatura da Função

async def fetch_cota_horaria(codigo_estacao: int, tipo: StationType, **kwargs) -> pd.DataFrame

Fetch cota horaria

Obtém a cota horária de uma estação com caching.

** Parâmetro:**

codigo_estacao (int): O código da estação. tipo (StationType): O tipo da estação (regua/pcd). kwargs: Parâmetros adicionais para a requisição.

** Raises:** Exception: Exceção genérica que cobre o fetch e a montagem do DataFrame.

** Returno:** pd.DataFrame: DataFrame com os dados de cota horária.