code: def set_proxy(self, proxy, update=True):
          
          update_web_driver = False
          if self.current_proxy != proxy:
              # Did we change proxies?
              update_web_driver = True
  
          self.current_proxy = proxy
          if proxy is None:
              # TODO: Need to be able to remove a proxy if one is set
              pass
          else:
              proxy_parts = cutil.get_proxy_parts(proxy)
  
              if proxy_parts.get('user') is not None:
                  # Proxy has auth, create extension to add to driver
                  self.opts.add_extension(self._proxy_extension(proxy_parts))
              else:
                  # Use the full proxy address passed in
                  self.opts.add_argument('--proxy-server={}'.format(proxy))
  
          # Recreate webdriver with new proxy settings
          if update_web_driver is True:
              self._update()
docs: Set proxy for chrome session