myTselection / Carbu_com

Actual fuel prices (super, diesel, lpg) per gasstation supported for Belgium, France, Luxembourg, Spain, Netherlands, Germany, Italy and US! Home Assistant custom component HACS integration for BE/FR/LU based on carbu.com and mazout.com site to compare and save on your actual fuel oil/heating oil (mazout) and fuel (diesel, super and lpg) purchases.
MIT License
23 stars 6 forks source link

Cannot add dutch gasstations #53

Closed polleke69 closed 2 months ago

polleke69 commented 2 months ago

When using coutry code NL, enter a postal code and town (NOT using geo api key) following error is thrown:

2024-08-23 10:17:06.885 ERROR (MainThread) [aiohttp.server] Error handling request Traceback (most recent call last): File "/var/srv/homeassistant-312/lib/python3.12/site-packages/aiohttp/web_protocol.py", line 456, in _handle_request resp = await request_handler(request) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/aiohttp/web_app.py", line 537, in _handle resp = await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/aiohttp/web_middlewares.py", line 114, in impl return await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/security_filter.py", line 92, in security_filter_middleware return await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/forwarded.py", line 83, in forwarded_middleware return await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/request_context.py", line 26, in request_context_middleware return await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/ban.py", line 85, in ban_middleware return await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/auth.py", line 242, in auth_middleware return await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/headers.py", line 32, in headers_middleware response = await handler(request) ^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/helpers/http.py", line 73, in handle result = await handler(request, request.match_info) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/decorators.py", line 81, in with_admin return await func(self, request, *args, *kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/config/config_entries.py", line 222, in post return await super().post(request, flow_id) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/components/http/data_validator.py", line 74, in wrapper return await method(view, request, data, args, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/helpers/data_entry_flow.py", line 122, in post result = await self._flow_mgr.async_configure(flow_id, data) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/data_entry_flow.py", line 366, in async_configure result = await self._async_configure(flow_id, user_input) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/data_entry_flow.py", line 413, in _async_configure result = await self._async_handle_step( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/homeassistant/data_entry_flow.py", line 516, in _async_handle_step result: _FlowResultT = await getattr(flow, method)(user_input) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/homeassistant/.homeassistant/custom_components/carbu_com/config_flow.py", line 321, in async_step_town boundingboxLocationInfo = await self.hass.async_add_executor_job(lambda: self._session.convertLocationBoundingBox(self._init_info.get('postalcode'), self._init_info.get('country'), self._init_info.get('town'))) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 58, in run result = self.fn(*self.args, self.kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/home/homeassistant/.homeassistant/custom_components/carbu_com/config_flow.py", line 321, in boundingboxLocationInfo = await self.hass.async_add_executor_job(lambda: self._session.convertLocationBoundingBox(self._init_info.get('postalcode'), self._init_info.get('country'), self._init_info.get('town'))) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/ratelimit/decorators.py", line 113, in wrapper return func(*args, *kargs) ^^^^^^^^^^^^^^^^^^^^ File "/var/srv/homeassistant-312/lib/python3.12/site-packages/ratelimit/decorators.py", line 80, in wrapper return func(args, kargs) ^^^^^^^^^^^^^^^^^^^^ File "/home/homeassistant/.homeassistant/custom_components/carbu_com/utils.py", line 184, in convertLocationBoundingBox orig_boundingbox = orig_location.get('boundingbox') ^^^^^^^^^^^^^^^^^ AttributeError: 'tuple' object has no attribute 'get'

myTselection commented 2 months ago

The API key is required for IT, NL, ES and US locations and to allow finding the cheapest stations on a route. For other locations the API key may not be required.

This was marked in readme and release notes. I might check it to force a value. a free GeoApify API key can be requested using the geoapify website.

myTselection commented 2 months ago

added in 11.1.0

polleke69 commented 2 months ago

Ouch, I missed that...

Thank you!

polleke69 commented 2 months ago

Looks like Geoapify has closed their free accounts, can't register a new one...