12 julho 2024

Resolvendo problema de timezone com Python (ZoneInfoNotFoundError) no Termux

Tenho experimentado usar o Termux para escrever e executar alguns pequenos programas no meu Android. Algumas provas de conceito, ideias ou teste rápidos. Porém recentemente após instalar e tentar rodar um projeto que implementa o i18n recebi a seguinte mensagem de erro no traceback do Python:

File "/data/data/com.termux/files/usr/lib/python3.11/zoneinfo/_common.py", line 24, in load_tzdata raise ZoneInfoNotFoundError(f"No time zone found with key {key}") zoneinfo._common.ZoneInfoNotFoundError: 'No time zone found with key America/Sao_Paulo'
 

A falha ocorreu pelo fato de não existir esse timezone America/São Paulo no sistema. Para resolver isso de forma pontual, encontrei um pacote Python tzdata que serve justamente como fallback para sistemas que não contém os dados dos timezones.

pip install tzdata