code: def __open(self, url, headers=None, data=None, baseurl=""):
          
          headers = headers or {}
          if not baseurl:
              baseurl = self.baseurl
          req = Request("%s%s" % (baseurl, url), headers=headers)
          _LOGGER.debug(url)
  
          try:
              req.data = urlencode(data).encode('utf-8')
          except TypeError:
              pass
          opener = build_opener()
  
          try:
              resp = opener.open(req)
              charset = resp.info().get('charset', 'utf-8')
              data = json.loads(resp.read().decode(charset))
              opener.close()
              _LOGGER.debug(json.dumps(data))
              return data
          except HTTPError as exception_:
              if exception_.code == 408:
                  _LOGGER.debug("%s", exception_)
                  return False
              raise TeslaException(exception_.code)
docs: Use raw urlopen command.