Package: meu-contracheque
Meu Contracheque :bookmark_tabs:Sobre este repositório :open_book:Meu contracheque é um pacote Python, acessível via interface CLI, utilizado para buscar informações de contracheques via web scraping.A primeira versão deste pacote conta com a busca de contracheques dos servidores públicos do Estado de Minas Gerais, disponibilizados na aba "Emissão de Contracheque" do sitePortal do Servidor.Orientações geraisInstalação dePython 3.Utilização de navegador Google Chrome.Não copie e cole os comandos abaixo cegamente, modifique os textos entre "< >" com as informações pertinente à sua realidade.Setup da máquinaRecomendo utilizar uma pasta específica para execução dos comandos do pacote, criando e ativando ambiente Python dentro da mesma, conforme sugerido abaixo:Pasta para execução dos comandos e ativação de ambiente pythonNecessário instalação dePython 3antes da execução os comandos abaixo para ambos os sistemas operacionais.Sistema operacional Linux:# Criação da pasta para execução do projeto
$ mkdir <nome-desejado-para-pasta>

# Acessando a pasta criada
$ cd <nome-desejado-para-pasta>

# Criação ambiente python
$ python3 -m venv venv

# Ativação ambiente python
$ source venv/bin/activateSistema operacional Windows:Recomendo a utilização de Git Bash disponível com instalação deGit para Windows.# Criação da pasta para execução do projeto
$ mkdir <nome-desejado-para-pasta>

# Acessando a pasta criada
$ cd <nome-desejado-para-pasta>

# Criação ambiente python
$ python -m venv venv

# Ativação ambiente python
$ source venv/Scripts/activateInstalação cromedriverIdentifique a versão do navegador Chrome instalado em sua máquina digitandochrome://version/na barra de navegação do mesmo.Realize o download dodrive específicopara versão chrome instalada em sua máquina.Necessário descompactar arquivo baixado.Para sistema operacional Windows basta incluir o caminho do arquivo descompactado no path.Para sistema operacional Linux incluir o arquivo no caminho/usr/local/bin.Passando suas credenciais para buscar o contrachequeAs credenciais masp e senha para busca de contracheque poderão ser passadas de duas maneiras, a saber:Utilização das flags-me-sdurante a chamada das funções$ meu-contracheque mg -m <masp-usuario> -s <senha-usuario> mais-recenteArquivo .env na raiz da pasta aonde os comandos serão executados.# Estrutura arquivo .env a ser criado
MASP=<masp-usuario>
PORTAL_PWD=<senha-usuario>Visualizando Navegador Chrome durante a execuçãoPor padrão execução não mostra navegador Chrome "trabalhando". Flag--headlessfoi criada e definida como padrãoTruepara tal. Possível utilizar flag--no-headlessdurante a execução para que o navegador seja acionado na tela, conforme demostrado abaixo:$ meu-contracheque mg -m <masp-usuario> -s <senha-usuario> --no-headlessBaixando arquivo pdfPor padrão execução fará o download do arquivo pdf. Flag--pdffoi criada e definida como padrãoTruepara tal. Possível utilizar flag--no-pdfdurante a execução sem o download, conforme demostrado abaixo:$ meu-contracheque mg -m <masp-usuario> -s <senha-usuario> --no-pdfobs.: Arquivo pdf gerado será salvo na pasta contracheques. A mesma será criada caso não exista.InstalaçãoOmeu-contrachequeestá disponível no Python Package Index -PyPIe pode ser instalado utilizando-se o comando abaixo:# Antes de executar o comando abaixo lembre-se que ambiente Python deverá estar ativo$pipinstallmeu-contrachequeUtilizaçãoO resultado da execução dos comandos abaixo será a criação do arquivo "contracheques.csv". As informações retornadas estão organizadas em formato tabular.
Toda execução subscreve o arquivo "contracheques.csv" anteriormente gerado.Buscar informações do contracheque mais recente:$ meu-contracheque mg mais-recenteBuscar informações de todos os contracheques emitidos:Obs.: Este comando deve ser utilizado para períodos sem interrupção na geração dos contracheques.$ meu-contracheque mg todosObs.: Esta opção poderá demorar, a depender do número de contracheques a serem exportados. O log de execução do comando será exibido no terminal, facilitando o entendimento que está acontecendo.Buscar informações de todos os contracheques emitidos com períodos em que a emissão foi interrompida:Obs.: Deverá ser informado período para qual a busca se encerrará. Exemplo. Primeiro contracheque emitido em 01/2010 deverá ser passado flag-sp 12/2009(para que seja retornado o contracheque de 01/2010 e a rotina seja encerrada no mês 12/2009).$ meu-contracheque mg ate-periodo-inicial -sp 12/2009Obs.: Esta opção poderá demorar, a depender do número de contracheques a serem exportados. O log de execução do comando será exibido no terminal, facilitando o entendimento que está acontecendo.Encontrou algo errado no código ou quer melhorá-loAbra umIssueou umPull Request!!!
Este tipo de contribuição auxiliará no crescimento do código de maneira exponencial!
Se deseja colocar a mão na massa, acesse as sugestões de melhorias já documentadas nosIssuescom a tag "enhancement".Controle de alteraçõesDocumentação das principais alterações sofridas por este repositório. Baseado na filosofiaMantenha um Changelog.[0.3.1] - 2022-11-16Implementa flag --no-headless na busca do último contracheque[0.3.0] - 2022-11-13Refaz o processo para novo portal do servidor mgSomente função last period funcionando no momento[0.2.5] - 2022-03-09Melhora geração arquivo pdf[0.2.4] - 2022-03-09Corrige nome arquivo pdf[0.2.3] - 2022-03-09Cria flag para pdf para determinar download do contracheque (--pdf/--no-pdf)Melhora Readme.md[0.2.2] - 2022-03-09Flags --masp e --senha passados após subcomando mgCria flag para determinar se Chrome ficará headless durante execução (--headless/--no-headless)Melhora Readme.md[0.2.1] - 2022-03-08Chrome headless durante execução[0.2.0] - 2021-12-27Inclusão comandoate-periodo-inicialTrocando print por click.echo para melhorar interface usuário no windows[0.1.1] - 2021-12-08Correção encoding utf-8 durante extração código fonte da página em sistema operacional windows[0.1.0] - 2021-12-06Versão inicialComandocontracheque mg mais-recentepara busca das informações do último contracheque disponível.Comandocontracheque mg todospara busca das informações de todos os contracheque disponíveis.[0.0.1.900] - 2021-11-27Versão para teste de setup do pacoteCriação de arquivos de configuração inicial do pacote:README.md,CHANGELOG.md,Makefile,Manifest.inRequirements.txtsetup.py