Módulo | Python: Scripting
Caderno de Exercícios
Professor André Perez
Tópicos
1. Instalando o Python na própria máquina;
2. Executando código Python no terminal;
3. Criando arquivos de script Python.
Exercícios
0. Preparando o ambiente
Instalando o Python e o PIP na sua máquina.
Nestes exercícios você vai precisar do Python (versão 3.x) e do PIP instalados na sua
máquina. Abra o seu terminal (windows cmd ou linux/mcos terminal ) e verifique se
ambos estão instalados na sua máquina.
python -V # possível resultado: Python 3.8.5
pip -V # possível resultado: pip 20.0.2 ...
Se pelo menos um dos softwares não estiver instalados na sua máquina, siga as
instruções da aula para instala-los. Se você tiver enfrentando algum problema, entre em
contato com o tutor.
Instalando os pacotes necessários.
Instale os pacotes necessários para conduzir os exercícios.
pip install pandas==1.2.4 seaborn==0.11.1 requests==2.25.1
1. Script de Extração
O script para extrair a taxa CDI do site da B3 foi adaptado para ser executado 10 vezes
para gerar nossa base de dados. Na sua máquina, crie o arquivo [Link] com o
script abaixo e execute-o com o comando:
python [Link]
No final, você deve ter o arquivo [Link] com os dados extraídos.
In [ ]:
import os
import time
import json
from random import random
from datetime import datetime
import requests
URL = '[Link] +
'[Link]'
# Criando a variável data e hora
for _ in range(0, 10):
data_e_hora = [Link]()
data = [Link](data_e_hora, '%Y/%m/%d')
hora = [Link](data_e_hora, '%H:%M:%S')
# Captando a taxa CDI do site da B3
try:
response = [Link](URL)
response.raise_for_status()
except [Link] as exc:
print("Dado não encontrado, continuando.")
cdi = None
except Exception as exc:
print("Erro, parando a execução.")
raise exc
else:
dado = [Link]([Link])
cdi = float(
dado['taxa'].replace(',', '.')
) + (random() - 0.5)
# Verificando se o arquivo "[Link]" existe
if [Link]('./[Link]') == False:
with open(file='./[Link]', mode='w', encoding='utf8')
as fp:
[Link]('data,hora,taxa\n')
# Salvando dados no arquivo "[Link]"
with open(file='./[Link]', mode='a', encoding='utf8')
as fp:
[Link](f'{data},{hora},{cdi}\n')
[Link](2 + (random() - 0.5))
print("Sucesso")
2. Script de Visualização
Já o script para gerar um grafico da taxa CDI do site da B3 foi adaptado para utilizar o
pacote Pandas. Na sua máquina, crie o arquivo [Link] com o script
abaixo e execute-o com o comando:
python [Link] <nome-do-grafico>
O script espera um parametro de entrada com o nome do gráfico, portanto substitua o
<nome-do-grafico> pelo nome do seu gráfico. No final, você deve ter uma imagem
no formato png com o nome passado via parametro contendo a visualização dos dados
gerados pelo script de extração..
In [ ]:
import csv
from sys import argv
import pandas as pd
import seaborn as sns
# Extraindo as colunas hora e taxa
df = pd.read_csv('./[Link]')
# Salvando no grafico
grafico = [Link](x=df['hora'], y=df['taxa'])
_ = grafico.set_xticklabels(labels=df['hora'], rotation=90)
grafico.get_figure().savefig(f"{argv[1]}.png")
3. Combinando os scripts de extração e visualização.
Combine os scripts [Link] e [Link] no arquivo [Link] e
execute-o na sua máquina, ele deve retornar os mesmos resultados: o arquivo csv e a
imagem no formato png com o título escolhido via parametro de entrada. Procure seguir
a organização proposta na aula (PEP8).
python [Link] <nome-do-grafico>
Além disso, copie o código na célula abaixo para que o tutor possa avaliar seu exercícios.
In [ ]:
# combinação dos scripts de extração e visualização