adicionada chamada 'nfts_collection_data_by_contract_address()'

This commit is contained in:
2024-06-17 16:08:03 +01:00
parent 75c352d27f
commit c1250bf951

View File

@ -1490,7 +1490,7 @@ def nfts_collection_data_by_id(id_nft: str = '') -> tuple[str, int, dict]:
''' '''
# dicionario de parametros # dicionario de parametros
api_parameters: dict = { api_parameters: dict = {
'id': '' 'id': '',
} }
# validacao de parametros # validacao de parametros
# id_nft ( como 'id' é um nome reservado, foi usado outro nome) # id_nft ( como 'id' é um nome reservado, foi usado outro nome)
@ -1512,16 +1512,43 @@ def nfts_collection_data_by_id(id_nft: str = '') -> tuple[str, int, dict]:
# else: # else:
# print(f'erro {codigo}: {dados}') # print(f'erro {codigo}: {dados}')
def nfts_collection_data_by_contrat_address() -> tuple[str, int, dict]: def nfts_collection_data_by_contract_address(
pass asset_platform_id: str = '',
contract_address: str = ''
) -> tuple[str, int, dict]:
'''https://docs.coingecko.com/v3.0.1/reference/nfts-contract-address
este endpoint permite obter toda a informação do NFT (nome, preco minimo, volume 24hrs, etc)
a partir do endereco de contracto da colecao NFT e respectiva plataforma de activo
'''
# dicionario parametros
api_parameters: dict = {
'asset_platform_id': '',
'contract_address': '',
}
# validacao de parametros
# asset_platform_id
if not isinstance(asset_platform_id, str):
raise TypeError('\'asset_platform_id\' tem de ser do tipo \'str\'')
if asset_platform_id == '':
raise ValueError('\'asset_platform_id\' tem de ser definido')
api_parameters['asset_platform_id'] = asset_platform_id
# contract_address
if not isinstance(contract_address, str):
raise TypeError('\'contract_address\' tem de ser do tipo \'str\'')
if contract_address == '':
raise ValueError('\'contract_address\' tem de ser definido')
api_parameters['contract_address'] = contract_address
return API(f'nfts/{api_parameters['asset_platform_id']}/contract/{api_parameters['contract_address']}', api_parameters)
# debug (decomentar linhas seguintes para testar funcao) # debug (decomentar linhas seguintes para testar funcao)
# url, codigo, dados = <nome_chamada_api()> # url, codigo, dados = nfts_collection_data_by_contract_address('ethereum', '0xbc4ca0eda7647a8ab7c2061c2e118a18a936f13d')
# print(f'url: {url}') # print(f'url: {url}')
# if codigo == 200: # if codigo == 200:
# for item in dados: # for item in dados:
# print(item) # print(f'{item}: {dados[item]}')
# else: # else:
# print(f'erro {codigo}: {dados}') # print(f'erro {codigo}: {dados}')