Last active
October 17, 2024 18:02
-
-
Save cdiaz/a623334ee994a836cba3 to your computer and use it in GitHub Desktop.
Obtener La tasa de cambio representativa del mercado (TRM) para Colombia consumiendo el webservice de la Superintentencia Financiera desde Python
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/env python | |
from suds.client import Client | |
import time | |
WSDL_URL = 'https://www.superfinanciera.gov.co/SuperfinancieraWebServiceTRM/TCRMServicesWebService/TCRMServicesWebService?WSDL' | |
date = time.strftime('%Y-%m-%d') | |
def trm(date): | |
try: | |
client = Client(WSDL_URL, location=WSDL_URL, faults=True) | |
trm = client.service.queryTCRM(date) | |
except Exception as e: | |
return str(e) | |
return trm | |
print trm(date) |
Sabes cómo obtener todas la tazas de cambio que están hay
@sistematod puedes utilizar un ciclo con el rango de fechas deseado, luego en cada iteración del ciclo consultas la TRM y las vas almacenando o pusheando en un dict.
Es la que he usado estos años, sin embargo hay una de datos.gov.co mas fácil de consumir que encontré hace poco:
https://www.datos.gov.co/resource/32sa-8pi3.json?vigenciadesde={yyyy-mm-dd}
Sobre todo si se implementa usando NodeJS, que fue el cambio que hice de pasar mi script de Python a Node
Solo puedo obtener dolar (USD) o puedo obtener otras tasas como por ejemplo: Libras, soles peruanos, etc..
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Una alternativa para sacar el el valor exacto también podría ser:
...
print(trm(date)[4])
o
...
valor_dolar = trm(date)[4]
print(valor_dolar)