'Makes a generic HTTP request at a given page with a given action.
Also pass relevant arguments for that action.'

def unparsed_request(self, sitepage, action, **kwargs):

    self.wait_for_rate_limit()
    url = ('%s%s' % (self.site, sitepage))
    params = {'action': action}
    if self.authkey:
        params['auth'] = self.authkey
    params.update(kwargs)
    r = self.session.get(url, params=params, allow_redirects=False, timeout=self.default_timeout)
    if ((r.status_code == 302) and (r.raw.headers['location'] == 'login.php')):
        self.logged_in_user = None
        raise LoginException('User    login    expired')
    self.past_request_timestamps.append(time.time())
    return r.content
