def METHOD_NAME(self):
    email, password = self._get_login_info()
    if email is None:
        return
    login_page = self._download_webpage(
        self._LOGIN_URL, None, 'Downloading login page')
    action_url = urljoin(self._LOGIN_URL, self._search_regex(
        r'<form[^>]+action=(["\'])(?P<url>.+?)\1', login_page, 'post url',
        default='https://www.linkedin.com/uas/login-submit', group='url'))
    data = self._hidden_inputs(login_page)
    data.update({
        'session_key': email,
        'session_password': password,
    })
    login_submit_page = self._download_webpage(
        action_url, None, 'Logging in',
        data=urlencode_postdata(data))
    error = self._search_regex(
        r'<span[^>]+class="error"[^>]*>\s*(.+?)\s*</span>',
        login_submit_page, 'error', default=None)
    if error:
        raise ExtractorError(error, expected=True)