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
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.httpclientpara chamadas assíncronas- Estruturas de dados definidas em
CotaHReCotaHPCD
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.