<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 async def _post_login_page(self, token):
 """Login to EBox website."""

        data = {"usrname": self.username,
                "pwd": self.password,
                "_csrf_security_token": token}

        try:
            async with async_timeout.timeout(10):
                raw_res = await self._session.post(LOGIN_URL,
                                                   data=data,
                                                   allow_redirects=False,
                                                   timeout=self._timeout)
        except OSError:
            raise PyEboxError("Can not submit login form")
        if raw_res.status != 302:
            raise PyEboxError("Bad HTTP status code")
        # search for errors
        re_results = re.search(r"err=[^&]*&", raw_res.headers.get('Location'))
        if re_results:
            await self._handle_login_error(raw_res.headers.get('Location'))
        return True