set Browser._chrome_instance=None if _chrome_instance.start() throws exception, to avoid endless loop after one failure

This commit is contained in:
Noah Levitt 2016-06-29 19:47:25 -05:00
parent 2e687b65fb
commit 79beddfc44
3 changed files with 19 additions and 10 deletions

View file

@ -131,13 +131,18 @@ class Browser:
# these can raise exceptions
self.chrome_port = self._find_available_port()
self._work_dir = tempfile.TemporaryDirectory()
self._chrome_instance = Chrome(port=self.chrome_port,
executable=self.chrome_exe,
self._chrome_instance = Chrome(
port=self.chrome_port, executable=self.chrome_exe,
user_home_dir=self._work_dir.name,
user_data_dir=os.sep.join([self._work_dir.name, "chrome-user-data"]),
user_data_dir=os.sep.join([
self._work_dir.name, "chrome-user-data"]),
ignore_cert_errors=self.ignore_cert_errors,
proxy=proxy or self.proxy)
self._websocket_url = self._chrome_instance.start()
try:
self._websocket_url = self._chrome_instance.start()
except:
self._chrome_instance = None
raise
def stop(self):
try: