def request(<EOL>self,<EOL>url,<EOL>params=None,<EOL>data=None,<EOL>headers=None,<EOL>timeout=None,<EOL>auth=None,<EOL>cookiejar=None,<EOL>):
<EOL>if headers is None:<EOL><INDENT>headers = {}<EOL><DEDENT>if timeout is None:<EOL><INDENT>timeout = getattr(self._py3status_module, "<STR_LIT>", <NUM_LIT:10>)<EOL><DEDENT>if "<STR_LIT>" not in headers:<EOL><INDENT>headers["<STR_LIT>"] = "<STR_LIT>".format(version, self._uid)<EOL><DEDENT>return HttpResponse(<EOL>url,<EOL>params=params,<EOL>data=data,<EOL>headers=headers,<EOL>timeout=timeout,<EOL>auth=auth,<EOL>cookiejar=cookiejar,<EOL>)<EOL>
Make a request to a url and retrieve the results.

If the headers parameter does not provide an 'User-Agent' key, one will
be added automatically following the convention:

    py3status/<version> <per session random uuid>

:param url: url to request eg `http://example.com`
:param params: extra query string parameters as a dict
:param data: POST data as a dict.  If this is not supplied the GET method will be used
:param headers: http headers to be added to the request as a dict
:param timeout: timeout for the request in seconds
:param auth: authentication info as tuple `(username, password)`
:param cookiejar: an object of a CookieJar subclass

:returns: HttpResponse