Skip to main content

CLI to CPTM and Metro lines status

Project description

Code Checks Code Quality PyPI Downloads GitHub tag

TPSP: Transporte Público de São Paulo

tpsp (acrônimo para "Transporte Público de São Paulo") é uma pequena aplicação escrita em Python cujo objetivo é exibir o estado atual das linhas da CPTM e Metro.

AVISO: Este projeto não possui relações com o Estado de São Paulo, a CPTM, o Metro ou qualquer outro órgão governamental.

Sumário

Requerimentos

  • Python (3.6.1 ou superior).

Dependências

Funcionamento

Não há, até a data de publicação desta aplicação, uma API pública para os serviços de trem e metrô do Estado de São Paulo. Os dados utilizados por esta aplicação são obtidos mediante web scraping das páginas online dos serviços.

O fluxo é relativamente simples:

  1. O parser recebe os argumentos e flags da linha de comando;
  2. Uma requisição GET é enviada à página do serviço a ser consultado;
  3. O conteúdo HTML é analisado, quebrado a partir da estrutura e filtrado;
  4. os trechos de interesse do conteúdo (as divs / .class que guardam os nomes das linhas e seus respectivo status) são retidos;
  5. Os dados das linhas são formatados e impressos na tela.

Cada resultado é filtrado e manipulado a partir das especificidades da construção da página web do serviço. Apesar de contraproducente, uma vez que mudanças na contrução das páginas podem (e vão) quebrar a funcionalidade, este foi o melhor approach encontrado.

Instalação

$ pip3 install tpsp

Uso

positional arguments:
  {cptm,metro}   the public transportation service

optional arguments:
  -h, --help     show this help message and exit
  -v, --version  show the program version and exit
  -j, --json     show the output in JSON format
  --copyright    show the copyright information and exit

examples:
    $ tpsp cptm
    # => shows the current state of all CPTM lines

    $ tpsp metro --json
    # => shows the current state of all Metro lines and formats
         the output in JSON

Licença

Na medida do possível sob a lei, Caian Rais Ertl renunciou a todos os direitos autorais e direitos relacionados ou adjacentes a este trabalho. No espírito da liberdade de informação, encorajo você a forkar, modificar, alterar, compartilhar ou fazer o que quiser com este projeto! ^ C ^ V

License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tpsp-1.0.1.tar.gz (9.4 kB view hashes)

Uploaded Source

Built Distribution

tpsp-1.0.1-py2.py3-none-any.whl (9.1 kB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page