refactoring
This commit is contained in:
@ -169,10 +169,9 @@ def lista_moedas(flag_include_platform: bool = False) -> tuple:
|
|||||||
return resposta.status_code, resposta.json()
|
return resposta.status_code, resposta.json()
|
||||||
# debug (decomentar linhas seguintes para testar funcao)
|
# debug (decomentar linhas seguintes para testar funcao)
|
||||||
# codigo, dados = lista_moedas(flag_include_platform=False)
|
# codigo, dados = lista_moedas(flag_include_platform=False)
|
||||||
# print(f'codigo: {codigo}')
|
|
||||||
# if codigo == 200:
|
# if codigo == 200:
|
||||||
# for item in dados:
|
# for item in dados:
|
||||||
# print(f'{item}')
|
# print(item)
|
||||||
|
|
||||||
# fazer consulta de dados OHLC
|
# fazer consulta de dados OHLC
|
||||||
def consulta_ohcl(criptomoeda: str = '',
|
def consulta_ohcl(criptomoeda: str = '',
|
||||||
|
|||||||
22
portfolio.py
22
portfolio.py
@ -2,7 +2,8 @@
|
|||||||
|
|
||||||
# aceder ao historico de preços OHLC de CoinGecko através da API
|
# aceder ao historico de preços OHLC de CoinGecko através da API
|
||||||
# máximo de requests mensal: 10000 (320/dia; 13/hora)
|
# máximo de requests mensal: 10000 (320/dia; 13/hora)
|
||||||
# . referenciar o uso da CoinGecko através de branding oficial e link para site (https://www.coingecko.com/en/branding)
|
# . referenciar o uso da CoinGecko através de branding oficial e
|
||||||
|
# link para site (https://www.coingecko.com/en/branding)
|
||||||
# . documentação API: https://docs.coingecko.com/v3.0.1/reference/introduction
|
# . documentação API: https://docs.coingecko.com/v3.0.1/reference/introduction
|
||||||
# . obter OHLC: https://docs.coingecko.com/v3.0.1/reference/coins-id-ohlc
|
# . obter OHLC: https://docs.coingecko.com/v3.0.1/reference/coins-id-ohlc
|
||||||
import requests
|
import requests
|
||||||
@ -13,7 +14,10 @@ criptomoeda = 'bitcoin'
|
|||||||
vs_currency = 'eur'
|
vs_currency = 'eur'
|
||||||
dias = '30'
|
dias = '30'
|
||||||
precisao = '3'
|
precisao = '3'
|
||||||
url_consulta_ohlc = 'coins/' + criptomoeda + '/ohlc?vs_currency=' + vs_currency + '&days=' + dias + '&precision=' + precisao
|
url_consulta_ohlc = 'coins/' + criptomoeda + \
|
||||||
|
'/ohlc?vs_currency=' + vs_currency + \
|
||||||
|
'&days=' + dias + \
|
||||||
|
'&precision=' + precisao
|
||||||
|
|
||||||
url = url_raiz_API + url_consulta_ohlc
|
url = url_raiz_API + url_consulta_ohlc
|
||||||
|
|
||||||
@ -28,9 +32,17 @@ resposta = requests.get(url, headers= headers)
|
|||||||
# carregar dados já existentes em ficheiro CSV (criar ficheiro se não existir) para dicionario
|
# carregar dados já existentes em ficheiro CSV (criar ficheiro se não existir) para dicionario
|
||||||
import csv
|
import csv
|
||||||
import os
|
import os
|
||||||
cabecalho: list = [ 'data_unix', 'criptomoeda', 'vs_currency', 'preco_abertura', 'preco_maximo', 'preco_minimo', 'preco_fecho' ]
|
cabecalho: list = [
|
||||||
|
'data_unix',
|
||||||
|
'criptomoeda',
|
||||||
|
'vs_currency',
|
||||||
|
'preco_abertura',
|
||||||
|
'preco_maximo',
|
||||||
|
'preco_minimo',
|
||||||
|
'preco_fecho'
|
||||||
|
]
|
||||||
caminho_ficheiro_historico_csv = './historico_precos.csv'
|
caminho_ficheiro_historico_csv = './historico_precos.csv'
|
||||||
if (os.path.exists(caminho_ficheiro_historico_csv) == False):
|
if (not os.path.exists(caminho_ficheiro_historico_csv)):
|
||||||
ficheiro = open(caminho_ficheiro_historico_csv, 'w+', newline='')
|
ficheiro = open(caminho_ficheiro_historico_csv, 'w+', newline='')
|
||||||
ficheiroCSV = csv.DictWriter(ficheiro, fieldnames=cabecalho)
|
ficheiroCSV = csv.DictWriter(ficheiro, fieldnames=cabecalho)
|
||||||
ficheiroCSV.writeheader()
|
ficheiroCSV.writeheader()
|
||||||
@ -78,4 +90,4 @@ def gravar_dados_ficheiro_csv(nome_ficheiro: str, dados_importados: list, campos
|
|||||||
ficheiroCSV.writeheader()
|
ficheiroCSV.writeheader()
|
||||||
ficheiroCSV.writerows(dados_importados)
|
ficheiroCSV.writerows(dados_importados)
|
||||||
|
|
||||||
gravar_dados_ficheiro_csv(caminho_ficheiro_historico_csv, lista_linhas_ficheiro_csv)
|
gravar_dados_ficheiro_csv(caminho_ficheiro_historico_csv, lista_linhas_ficheiro_csv)
|
||||||
Reference in New Issue
Block a user