parameters: (self)
return_statement: return opener
docstring: Returns an OpenerDirector that supports cookies and ignores redirects.
  
      Returns:
        A urllib2.OpenerDirector object.
docstring_summary: Returns an OpenerDirector that supports cookies and ignores redirects.
docstring_tokens: Returns an OpenerDirector that supports cookies and ignores redirects .
function: def _GetOpener(self):
      """Returns an OpenerDirector that supports cookies and ignores redirects.
  
      Returns:
        A urllib2.OpenerDirector object.
      """
      opener = urllib2.OpenerDirector()
      opener.add_handler(urllib2.ProxyHandler())
      opener.add_handler(urllib2.UnknownHandler())
      opener.add_handler(urllib2.HTTPHandler())
      opener.add_handler(urllib2.HTTPDefaultErrorHandler())
      opener.add_handler(urllib2.HTTPSHandler())
      opener.add_handler(urllib2.HTTPErrorProcessor())
      if self.save_cookies:
        self.cookie_file = os.path.expanduser("~/.codereview_upload_cookies")
        self.cookie_jar = cookielib.MozillaCookieJar(self.cookie_file)
        if os.path.exists(self.cookie_file):
          try:
            self.cookie_jar.load()
            self.authenticated = True
            StatusUpdate("Loaded authentication cookies from %s" %
                         self.cookie_file)
          except (cookielib.LoadError, IOError):
            # Failed to load cookies - just ignore them.
            pass
        else:
          # Create an empty cookie file with mode 600
          fd = os.open(self.cookie_file, os.O_CREAT, 0600)
          os.close(fd)
        # Always chmod the cookie file
        os.chmod(self.cookie_file, 0600)
      else:
        # Don't save cookies across runs of update.py.
        self.cookie_jar = cookielib.CookieJar()
      opener.add_handler(urllib2.HTTPCookieProcessor(self.cookie_jar))
      return opener
function_tokens: def _GetOpener ( self ) : opener = urllib2 . OpenerDirector ( ) opener . add_handler ( urllib2 . ProxyHandler ( ) ) opener . add_handler ( urllib2 . UnknownHandler ( ) ) opener . add_handler ( urllib2 . HTTPHandler ( ) ) opener . add_handler ( urllib2 . HTTPDefaultErrorHandler ( ) ) opener . add_handler ( urllib2 . HTTPSHandler ( ) ) opener . add_handler ( urllib2 . HTTPErrorProcessor ( ) ) if self . save_cookies : self . cookie_file = os . path . expanduser ( "~/.codereview_upload_cookies" ) self . cookie_jar = cookielib . MozillaCookieJar ( self . cookie_file ) if os . path . exists ( self . cookie_file ) : try : self . cookie_jar . load ( ) self . authenticated = True StatusUpdate ( "Loaded authentication cookies from %s" % self . cookie_file ) except ( cookielib . LoadError , IOError ) : # Failed to load cookies - just ignore them. pass else : # Create an empty cookie file with mode 600 fd = os . open ( self . cookie_file , os . O_CREAT , 0600 ) os . close ( fd ) # Always chmod the cookie file os . chmod ( self . cookie_file , 0600 ) else : # Don't save cookies across runs of update.py. self . cookie_jar = cookielib . CookieJar ( ) opener . add_handler ( urllib2 . HTTPCookieProcessor ( self . cookie_jar ) ) return opener