{"id":42175118,"url":"https://github.com/esign-consulting/qualidade-ar-smac","last_synced_at":"2026-01-26T21:46:47.929Z","repository":{"id":37096371,"uuid":"319168259","full_name":"esign-consulting/qualidade-ar-smac","owner":"esign-consulting","description":"Dados de qualidade do ar coletados da Prefeitura do RJ - Secretaria Municipal de Meio Ambiente (SMAC).","archived":false,"fork":false,"pushed_at":"2025-11-27T09:25:01.000Z","size":7745,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-11-30T02:51:59.118Z","etag":null,"topics":["air-quality","html-parser","java","jsoup","opendata","opendata-api","spring-boot","webscraping"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/esign-consulting.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2020-12-07T01:10:11.000Z","updated_at":"2025-10-10T10:04:55.000Z","dependencies_parsed_at":"2025-01-10T19:34:14.791Z","dependency_job_id":"9f2ae1b2-553f-4e2f-a50f-b4893eef8687","html_url":"https://github.com/esign-consulting/qualidade-ar-smac","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/esign-consulting/qualidade-ar-smac","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/esign-consulting%2Fqualidade-ar-smac","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/esign-consulting%2Fqualidade-ar-smac/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/esign-consulting%2Fqualidade-ar-smac/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/esign-consulting%2Fqualidade-ar-smac/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/esign-consulting","download_url":"https://codeload.github.com/esign-consulting/qualidade-ar-smac/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/esign-consulting%2Fqualidade-ar-smac/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28788997,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-26T21:13:08.818Z","status":"ssl_error","status_checked_at":"2026-01-26T21:13:08.448Z","response_time":59,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["air-quality","html-parser","java","jsoup","opendata","opendata-api","spring-boot","webscraping"],"created_at":"2026-01-26T21:46:47.138Z","updated_at":"2026-01-26T21:46:47.924Z","avatar_url":"https://github.com/esign-consulting.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# qualidade-ar-smac\n\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=esign-consulting_qualidade-ar-smac\u0026metric=alert_status)](https://sonarcloud.io/summary/new_code?id=esign-consulting_qualidade-ar-smac)\n[![Docker Pulls](https://img.shields.io/docker/pulls/esignbr/qualidade-ar-smac.svg)](https://hub.docker.com/r/esignbr/qualidade-ar-smac)\n[![API](https://img.shields.io/website-up-down-green-red/https/qualidadearsmac.azurewebsites.net/api/health.svg?label=API)](https://qualidadearsmac.azurewebsites.net/api/boletim)\n\nDados de qualidade do ar coletados da [Prefeitura do RJ - Secretaria Municipal de Meio Ambiente (SMAC)](https://ambienteclima.prefeitura.rio). Os dados são publicados pela SMAC nos seguintes meios:\n\n- [Boletim Diário](http://jeap.rio.rj.gov.br/je-metinfosmac/boletim)\n- [Portal de dados abertos da Prefeitura do RJ - Data.Rio](https://www.data.rio/maps/5b1bf5c3e5114564bbf9b7a372b85e17/about)\n- [Portal MonitorAr do Ministério de Meio Ambiente e Mudança do Clima](https://monitorar.mma.gov.br)\n\n## Execução\n\nA API é uma aplicação [Spring Boot](https://spring.io/projects/spring-boot) e para ser inicializada execute (requer [Maven](https://maven.apache.org)):\n\n`mvn spring-boot:run`\n\nA API também pode ser inicializada como [contâiner](https://en.wikipedia.org/wiki/Container_Linux). Para inicializar a API deste modo, execute (requer [Docker](https://www.docker.com)):\n\n`docker run --name smac --rm -d -p 8080:8080 esignbr/qualidade-ar-smac`\n\n## Gráfico dos últimos 365 dias\n\nOs dados de qualidade do ar dos últimos 365 dias, carregados para uma base de dados [TimescaleDB](https://www.timescale.com/go/time-series), podem ser visualizados num dashboard do [Grafana](https://grafana.com). Para isso, siga os seguintes passos (requer [docker-compose](https://docs.docker.com/compose)):\n\n1. Inicialize o ambiente: `docker-compose up -d`;\n2. Pelo browser entre em \u003chttp://localhost:3000\u003e;\n3. Entre no dashboard `SMAC`.\n\n![SMAC dashboard](last365d.png)\n\n:white_check_mark: O Grafana também pode ser visualizado [aqui](https://grafana.mangocliff-c2491b60.brazilsouth.azurecontainerapps.io).\n\n### Consultas aos dados\n\nSe preferir, obtenha diretamente todos os dados da SMAC, através da **Query Tool** do [pgAdmin](http://localhost:8085) (usuário `esign@esign.com.br` e senha `S3cr3t`):\n\n```sql\nSELECT md.*\nFROM medicoes_diarias AS md\nJOIN estacoes AS e ON e.codigo = md.codigo_estacao\nWHERE e.orgao = 'SMAC'\nORDER BY md.data\n```\n\nÚltimo índice de qualidade do ar das estações de monitoramento da SMAC:\n\n```sql\nSELECT e.nome AS \"estacao\",\n  (SELECT md1.iqar\n     FROM medicoes_diarias AS md1\n    WHERE md1.codigo_estacao = e.codigo\n      AND md1.data = (SELECT MAX(md2.data)\n                         FROM medicoes_diarias AS md2\n                        WHERE md2.codigo_estacao = e.codigo)\n  ) AS \"iqar\"\nFROM estacoes AS e\nWHERE e.orgao = 'SMAC'\n```\n\nPoluentes que mais impactaram o índice de qualidade do ar no período:\n\n```sql\nSELECT md.codigo_poluente, COUNT(*) AS \"qtde\"\nFROM medicoes_diarias AS md\nJOIN estacoes AS e ON e.codigo = md.codigo_estacao\nWHERE e.orgao = 'SMAC'\nGROUP BY md.codigo_poluente\nORDER BY qtde DESC\n```\n\nDistribuição da classificação da qualidade do ar desde 19/11/2019, quando a nova tabela de qualidade do ar passou a ser utilizada:\n\n```sql\nSELECT md.classificacao, COUNT(*) AS \"qtde\"\nFROM medicoes_diarias AS md\nJOIN estacoes AS e ON e.codigo = md.codigo_estacao\nWHERE e.orgao = 'SMAC'\nAND md.data \u003e= '2019/11/19'\nGROUP BY md.classificacao\nORDER BY qtde DESC\n```\n\n:white_check_mark: O pgAdmin também pode ser usado [aqui](https://pgadmin.mangocliff-c2491b60.brazilsouth.azurecontainerapps.io).\n\n### Dump da base de dados\n\n`pg_dump -h localhost -p 5432 -U postgres -f dump.sql postgres`\n\n## Dados históricos\n\nDados históricos horários no formato CSV podem ser obtidos do Data.Rio através do comando:\n\n`curl 'https://hub.arcgis.com/api/v3/datasets/5b1bf5c3e5114564bbf9b7a372b85e17_2/downloads/data?format=csv\u0026spatialRefId=31983'`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fesign-consulting%2Fqualidade-ar-smac","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fesign-consulting%2Fqualidade-ar-smac","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fesign-consulting%2Fqualidade-ar-smac/lists"}