fipe-python-sdk 1.0.4__tar.gz → 1.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (21) hide show
  1. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/PKG-INFO +1 -1
  2. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/pyproject.toml +1 -1
  3. fipe_python_sdk-1.1.0/src/fipe/api.py +15 -0
  4. fipe_python_sdk-1.1.0/src/fipe/apis/anos_modelo.py +21 -0
  5. fipe_python_sdk-1.1.0/src/fipe/apis/fipe_info.py +21 -0
  6. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/src/fipe/apis/marcas.py +4 -5
  7. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/src/fipe/apis/modelos.py +5 -6
  8. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/src/fipe/apis/tabelas_referencia.py +2 -2
  9. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/src/fipe_python_sdk.egg-info/PKG-INFO +1 -1
  10. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/src/fipe_python_sdk.egg-info/SOURCES.txt +1 -1
  11. fipe_python_sdk-1.0.4/src/fipe/api.py +0 -35
  12. fipe_python_sdk-1.0.4/src/fipe/apis/anos_modelo.py +0 -22
  13. fipe_python_sdk-1.0.4/src/fipe/apis/valor_parametros.py +0 -22
  14. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/LICENSE +0 -0
  15. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/README.md +0 -0
  16. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/setup.cfg +0 -0
  17. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/src/__init__.py +0 -0
  18. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/src/fipe/__init__.py +0 -0
  19. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/src/fipe/apis/__init__.py +0 -0
  20. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/src/fipe_python_sdk.egg-info/dependency_links.txt +0 -0
  21. {fipe_python_sdk-1.0.4 → fipe_python_sdk-1.1.0}/src/fipe_python_sdk.egg-info/top_level.txt +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fipe-python-sdk
3
- Version: 1.0.4
3
+ Version: 1.1.0
4
4
  Summary: Client de comunicaçao c/ API da Fipe
5
5
  Author-email: Filipe Coelho <filipe@fmconsult.com.br>
6
6
  License: MIT License
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
4
4
 
5
5
  [project]
6
6
  name = "fipe-python-sdk"
7
- version = "1.0.4"
7
+ version = "1.1.0"
8
8
  description = "Client de comunicaçao c/ API da Fipe"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.11"
@@ -0,0 +1,15 @@
1
+ import os
2
+ from fmconsult.http.api import ApiBase
3
+
4
+ class FipeApi(ApiBase):
5
+
6
+ def __init__(self):
7
+ try:
8
+ self.subscription_token = os.environ['fipe.api.token']
9
+
10
+ self.base_url = 'https://fipe.parallelum.com.br/api/v2'
11
+ self.headers = {
12
+ 'X-Subscription-Token': self.subscription_token
13
+ }
14
+ except:
15
+ raise
@@ -0,0 +1,21 @@
1
+ import logging, jsonpickle
2
+ from http import HTTPMethod
3
+ from fmconsult.utils.url import UrlUtil
4
+ from fipe.api import FipeApi
5
+
6
+ class AnosModelo(FipeApi):
7
+
8
+ def __init__(self):
9
+ super().__init__()
10
+
11
+ def get_anos_by_modelo(self, codigoTipoVeiculo, codigoMarca, codigoModelo):
12
+ try:
13
+ logging.info(f'listing FIPE Years by Model {str(codigoModelo)}...')
14
+ self.endpoint_url = UrlUtil().make_url(self.base_url, [codigoTipoVeiculo, 'brands', codigoMarca, 'models', codigoModelo, 'years'])
15
+ res = self.call_request(
16
+ http_method=HTTPMethod.GET,
17
+ request_url=self.endpoint_url
18
+ )
19
+ return jsonpickle.decode(res)
20
+ except:
21
+ raise
@@ -0,0 +1,21 @@
1
+ import logging, jsonpickle
2
+ from http import HTTPMethod
3
+ from fmconsult.utils.url import UrlUtil
4
+ from fipe.api import FipeApi
5
+
6
+ class FipeInfo(FipeApi):
7
+
8
+ def __init__(self):
9
+ super().__init__()
10
+
11
+ def get_fipe_info(self, codigoTipoVeiculo, codigoMarca, codigoModelo, codigoAnoModelo):
12
+ try:
13
+ logging.info(f'get Valor by parameters...')
14
+ self.endpoint_url = UrlUtil().make_url(self.base_url, [codigoTipoVeiculo, 'brands', codigoMarca, 'models', codigoModelo, 'years', codigoAnoModelo])
15
+ res = self.call_request(
16
+ http_method=HTTPMethod.GET,
17
+ request_url=self.endpoint_url
18
+ )
19
+ return jsonpickle.decode(res)
20
+ except:
21
+ raise
@@ -7,15 +7,14 @@ class Marcas(FipeApi):
7
7
 
8
8
  def __init__(self):
9
9
  super().__init__()
10
- self.endpoint_url = UrlUtil().make_url(self.base_url, ['ConsultarMarcas'])
11
10
 
12
- def get_marcas(self, codigoTabelaReferencia, codigoTipoVeiculo):
11
+ def get_marcas(self, codigoTipoVeiculo):
13
12
  try:
14
13
  logging.info('listing FIPE Brands...')
14
+ self.endpoint_url = UrlUtil().make_url(self.base_url, [codigoTipoVeiculo, 'brands'])
15
15
  res = self.call_request(
16
- http_method=HTTPMethod.POST,
17
- request_url=self.endpoint_url,
18
- payload=self.create_payload(codigoTabelaReferencia, codigoTipoVeiculo)
16
+ http_method=HTTPMethod.GET,
17
+ request_url=self.endpoint_url
19
18
  )
20
19
  return jsonpickle.decode(res)
21
20
  except:
@@ -7,15 +7,14 @@ class Modelos(FipeApi):
7
7
 
8
8
  def __init__(self):
9
9
  super().__init__()
10
- self.endpoint_url = UrlUtil().make_url(self.base_url, ['ConsultarModelos'])
11
-
12
- def get_modelos_by_marca(self, codigoTabelaReferencia, codigoTipoVeiculo, codigoMarca):
10
+
11
+ def get_modelos_by_marca(self, codigoTipoVeiculo, codigoMarca):
13
12
  try:
14
13
  logging.info(f'listing FIPE Models by Brand {str(codigoMarca)}...')
14
+ self.endpoint_url = UrlUtil().make_url(self.base_url, [codigoTipoVeiculo, 'brands', codigoMarca, 'models'])
15
15
  res = self.call_request(
16
- http_method=HTTPMethod.POST,
17
- request_url=self.endpoint_url,
18
- payload=self.create_payload(codigoTabelaReferencia, codigoTipoVeiculo, codigoMarca)
16
+ http_method=HTTPMethod.GET,
17
+ request_url=self.endpoint_url
19
18
  )
20
19
  return jsonpickle.decode(res)
21
20
  except:
@@ -7,13 +7,13 @@ class TabelasReferencia(FipeApi):
7
7
 
8
8
  def __init__(self):
9
9
  super().__init__()
10
- self.endpoint_url = UrlUtil().make_url(self.base_url, ['ConsultarTabelaDeReferencia'])
10
+ self.endpoint_url = UrlUtil().make_url(self.base_url, ['references'])
11
11
 
12
12
  def get_tabelas_referencia(self):
13
13
  try:
14
14
  logging.info('listing FIPE reference tables...')
15
15
  res = self.call_request(
16
- http_method=HTTPMethod.POST,
16
+ http_method=HTTPMethod.GET,
17
17
  request_url=self.endpoint_url
18
18
  )
19
19
  return jsonpickle.decode(res)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fipe-python-sdk
3
- Version: 1.0.4
3
+ Version: 1.1.0
4
4
  Summary: Client de comunicaçao c/ API da Fipe
5
5
  Author-email: Filipe Coelho <filipe@fmconsult.com.br>
6
6
  License: MIT License
@@ -6,10 +6,10 @@ src/fipe/__init__.py
6
6
  src/fipe/api.py
7
7
  src/fipe/apis/__init__.py
8
8
  src/fipe/apis/anos_modelo.py
9
+ src/fipe/apis/fipe_info.py
9
10
  src/fipe/apis/marcas.py
10
11
  src/fipe/apis/modelos.py
11
12
  src/fipe/apis/tabelas_referencia.py
12
- src/fipe/apis/valor_parametros.py
13
13
  src/fipe_python_sdk.egg-info/PKG-INFO
14
14
  src/fipe_python_sdk.egg-info/SOURCES.txt
15
15
  src/fipe_python_sdk.egg-info/dependency_links.txt
@@ -1,35 +0,0 @@
1
- import os
2
- from fmconsult.http.api import ApiBase
3
-
4
- class FipeApi(ApiBase):
5
-
6
- def __init__(self):
7
- try:
8
- self.base_url = 'https://veiculos.fipe.org.br/api/veiculos'
9
- self.headers = {}
10
- except:
11
- raise
12
-
13
- def create_payload(self, codigoTabelaReferencia=None, codigotTipoVeiculo=None, codigoMarca=None, codigoModelo=None, anoModelo=None):
14
- payload = {}
15
-
16
- if not(codigoTabelaReferencia is None):
17
- payload['codigoTabelaReferencia'] = int(codigoTabelaReferencia)
18
-
19
- if not(codigotTipoVeiculo is None):
20
- payload['codigoTipoVeiculo'] = int(codigotTipoVeiculo)
21
-
22
- if not(codigoMarca is None):
23
- payload['codigoMarca'] = int(codigoMarca)
24
-
25
- if not(codigoModelo is None):
26
- payload['codigoModelo'] = int(codigoModelo)
27
-
28
- if not(anoModelo is None):
29
- payload['ano'] = str(anoModelo)
30
- split = anoModelo.split('-')
31
- payload['anoModelo'] = int(split[0])
32
- payload['codigoTipoCombustivel'] = int(split[1])
33
- payload['tipoConsulta'] = str('tradicional')
34
-
35
- return payload
@@ -1,22 +0,0 @@
1
- import logging, jsonpickle
2
- from http import HTTPMethod
3
- from fmconsult.utils.url import UrlUtil
4
- from fipe.api import FipeApi
5
-
6
- class AnosModelo(FipeApi):
7
-
8
- def __init__(self):
9
- super().__init__()
10
- self.endpoint_url = UrlUtil().make_url(self.base_url, ['ConsultarAnoModelo'])
11
-
12
- def get_anos_by_modelo(self, codigoTabelaReferencia, codigoTipoVeiculo, codigoMarca, codigoModelo):
13
- try:
14
- logging.info(f'listing FIPE Years by Model {str(codigoModelo)}...')
15
- res = self.call_request(
16
- http_method=HTTPMethod.POST,
17
- request_url=self.endpoint_url,
18
- payload=self.create_payload(codigoTabelaReferencia, codigoTipoVeiculo, codigoMarca, codigoModelo)
19
- )
20
- return jsonpickle.decode(res)
21
- except:
22
- raise
@@ -1,22 +0,0 @@
1
- import logging, jsonpickle
2
- from http import HTTPMethod
3
- from fmconsult.utils.url import UrlUtil
4
- from fipe.api import FipeApi
5
-
6
- class ValorParametros(FipeApi):
7
-
8
- def __init__(self):
9
- super().__init__()
10
- self.endpoint_url = UrlUtil().make_url(self.base_url, ['ConsultarValorComTodosParametros'])
11
-
12
- def get_valor_by_parametros(self, codigoTabelaReferencia, codigoTipoVeiculo, codigoMarca, codigoModelo, anoModelo):
13
- try:
14
- logging.info(f'get Valor by parameters...')
15
- res = self.call_request(
16
- http_method=HTTPMethod.POST,
17
- request_url=self.endpoint_url,
18
- payload=self.create_payload(codigoTabelaReferencia, codigoTipoVeiculo, codigoMarca, codigoModelo, anoModelo)
19
- )
20
- return jsonpickle.decode(res)
21
- except:
22
- raise
File without changes