Skip to main content

CLI to CPTM and Metro lines status

Project description

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.4 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

Kopimi Logo

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.

Files for tpsp, version 0.1.4
Filename, size File type Python version Upload date Hashes
Filename, size tpsp-0.1.4-py2.py3-none-any.whl (8.8 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size tpsp-0.1.4.tar.gz (6.7 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page