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 details)

Uploaded Source

Built Distribution

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

Uploaded Python 2 Python 3

File details

Details for the file tpsp-1.0.1.tar.gz.

File metadata

  • Download URL: tpsp-1.0.1.tar.gz
  • Upload date:
  • Size: 9.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.5.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.9

File hashes

Hashes for tpsp-1.0.1.tar.gz
Algorithm Hash digest
SHA256 25bdfc376b2198e14508a8ef09e2856657e9a15f1224365697499b5525af9f8b
MD5 542237278271db247d9dbde4dc12382f
BLAKE2b-256 97399364a0dc01695b8a75b8702d56c1eb9934346281fb527f3551f02286f5e0

See more details on using hashes here.

File details

Details for the file tpsp-1.0.1-py2.py3-none-any.whl.

File metadata

  • Download URL: tpsp-1.0.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 9.1 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.5.0 importlib_metadata/4.8.2 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.9

File hashes

Hashes for tpsp-1.0.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 24d8656fd7e304fd2225cd1d1ad0ab9d128bed0bbdc784122536a27a360a3754
MD5 f2756ef24572a852144c97b8961e7ebe
BLAKE2b-256 a6f81f92cc589042fd83f4f2b14122e65de58680712d9f3d493fb62e078ed96b

See more details on using hashes here.

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