in mozdownload/parser.py [0:0]
def __init__(self, url, session=None, authentication=None, timeout=None):
"""Create instance of a directory parser.
:param url: url of the directory on the web server.
:param session: a requests Session instance used to fetch the directory
content. If None, a new session will be created.
:param authentication: a tuple (username, password) to authenticate against
the web server, or None for no authentication. Note
that it will only be used if the given *session* is
None.
:param timeout: timeout in seconds used when fetching the directory
content.
"""
if not session:
session = requests.Session()
session.auth = authentication
self.session = session
self.timeout = timeout
self.active_url = None
self.entries = []
HTMLParser.__init__(self)
# Force the server to not send cached content
headers = {'Cache-Control': 'max-age=0'}
r = self.session.get(url, headers=headers, timeout=self.timeout)
try:
r.raise_for_status()
self.feed(r.text)
finally:
r.close()