lewisbenge / hass-amber-electric

Home Assistant Component to pull the latest energy prices from Amber Electric
MIT License
27 stars 7 forks source link

Sensor is not booting anymore - "TypeError: Parser must be a string or character stream, not NoneType" #10

Closed stuarts0011 closed 4 years ago

stuarts0011 commented 4 years ago

Logger: homeassistant.components.sensor Source: custom_components/amberelectric/ambermodel.py:41 Integration: Sensor (documentation, issues) First occurred: 18:05:03 (1 occurrences) Last logged: 18:05:03

Error while setting up amberelectric platform for sensor Traceback (most recent call last): File "/usr/src/homeassistant/homeassistant/helpers/entity_platform.py", line 178, in _async_setup_platform await asyncio.wait_for(asyncio.shield(task), SLOW_SETUP_MAX_WAIT) File "/usr/local/lib/python3.7/asyncio/tasks.py", line 442, in wait_for return fut.result() File "/usr/local/lib/python3.7/concurrent/futures/thread.py", line 57, in run result = self.fn(*self.args, *self.kwargs) File "/config/custom_components/amberelectric/sensor.py", line 45, in setup_platform AmberPricingSensor(amber_data, postcode, CONST_SOLARFIT, "Amber solar feed in tariff", "mdi:solar-power"), File "/config/custom_components/amberelectric/sensor.py", line 62, in init self.update() File "/usr/src/homeassistant/homeassistant/util/init.py", line 239, in wrapper result = method(args, kwargs) File "/config/custom_components/amberelectric/sensor.py", line 157, in update self.amber_data = AmberData.from_dict(json.loads(response.text)) File "/config/custom_components/amberelectric/ambermodel.py", line 433, in from_dict data = Data.from_dict(obj.get("data")) File "/config/custom_components/amberelectric/ambermodel.py", line 396, in from_dict VariablePricesAndRenewable.from_dict, obj.get("variablePricesAndRenewables") File "/config/custom_components/amberelectric/ambermodel.py", line 51, in from_list return [f(y) for y in x] File "/config/custom_components/amberelectric/ambermodel.py", line 51, in return [f(y) for y in x] File "/config/custom_components/amberelectric/ambermodel.py", line 315, in from_dict created_at = from_datetime(obj.get("createdAt")) File "/config/custom_components/amberelectric/ambermodel.py", line 41, in from_datetime return dateutil.parser.parse(x) File "/usr/local/lib/python3.7/site-packages/dateutil/parser/_parser.py", line 1374, in parse return DEFAULTPARSER.parse(timestr, kwargs) File "/usr/local/lib/python3.7/site-packages/dateutil/parser/_parser.py", line 646, in parse res, skipped_tokens = self._parse(timestr, **kwargs) File "/usr/local/lib/python3.7/site-packages/dateutil/parser/_parser.py", line 725, in _parse l = _timelex.split(timestr) # Splits the timestr into tokens File "/usr/local/lib/python3.7/site-packages/dateutil/parser/_parser.py", line 207, in split return list(cls(s)) File "/usr/local/lib/python3.7/site-packages/dateutil/parser/_parser.py", line 76, in init '{itype}'.format(itype=instream.class.name)) TypeError: Parser must be a string or character stream, not NoneType

stuarts0011 commented 4 years ago

Just saw that this is addressed by a PR.

boc-the-git commented 4 years ago

@stuarts0011 PR9 has been merged into master now.

OmgImAlexis commented 4 years ago

This can be closed if the PR has been merged.