Current section
Files
Jump to
Current section
Files
lib/tesourex.ex
defmodule Tesourex do
alias HTTPoison.Response
def quotes(source \\ "html", http_client \\ HTTPoison) do
url_for(source)
|> http_client.get
|> handle_response
|> parser_for(source).parse
end
defp url_for("html"), do: "http://www.tesouro.fazenda.gov.br/tesouro-direto-precos-e-taxas-dos-titulos"
defp url_for("csv"), do: "http://www.tesourotransparente.gov.br/ckan/dataset/df56aa42-484a-4a59-8184-7676580c81e3/resource/796d2059-14e9-44e3-80c9-2d9e30b405c1/download/PrecoTaxaTesouroDireto.csv"
defp parser_for("html"), do: Tesourex.HTML
defp parser_for("csv"), do: Tesourex.CSV
defp handle_response({:ok, %Response{status_code: 200, body: body}}) do
body
end
defp handle_response(_) do
""
end
end