Open AlineGobbi opened 1 month ago
I've also encountered similar problem
from selenium import webdriver
from webdriver_manager.chrome import ChromeDriverManager
from selenium.webdriver.chrome.service import Service as ChromeService
driver = webdriver.Chrome(service=ChromeService(ChromeDriverManager().install()))
driver.get('https://test.com/Login/')
---------------------------------------------------------------------------
OSError Traceback (most recent call last)
File d:\PycharmProjects\master_db_updater\open_inforex.py:2
[1](file:///D:/PycharmProjects/master_db_updater/open_inforex.py:1) # %%
----> [2](file:///D:/PycharmProjects/master_db_updater/open_inforex.py:2) driver = webdriver.Chrome(service=ChromeService(ChromeDriverManager().install()))
[3](file:///D:/PycharmProjects/master_db_updater/open_inforex.py:3) driver.get('https://test.com/Login')
[5](file:///D:/PycharmProjects/master_db_updater/open_inforex.py:5) # Wait for the page to load
File d:\PycharmProjects\master_db_updater\.venv\Lib\site-packages\selenium\webdriver\chrome\webdriver.py:45, in WebDriver.__init__(self, options, service, keep_alive)
[42](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chrome/webdriver.py:42) service = service if service else Service()
[43](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chrome/webdriver.py:43) options = options if options else Options()
---> [45](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chrome/webdriver.py:45) super().__init__(
[46](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chrome/webdriver.py:46) browser_name=DesiredCapabilities.CHROME["browserName"],
[47](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chrome/webdriver.py:47) vendor_prefix="goog",
[48](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chrome/webdriver.py:48) options=options,
[49](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chrome/webdriver.py:49) service=service,
[50](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chrome/webdriver.py:50) keep_alive=keep_alive,
[51](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chrome/webdriver.py:51) )
File d:\PycharmProjects\master_db_updater\.venv\Lib\site-packages\selenium\webdriver\chromium\webdriver.py:55, in ChromiumDriver.__init__(self, browser_name, vendor_prefix, options, service, keep_alive)
[52](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chromium/webdriver.py:52) options.browser_version = None
[54](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chromium/webdriver.py:54) self.service.path = finder.get_driver_path()
---> [55](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chromium/webdriver.py:55) self.service.start()
[57](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chromium/webdriver.py:57) executor = ChromiumRemoteConnection(
[58](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chromium/webdriver.py:58) remote_server_addr=self.service.service_url,
[59](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chromium/webdriver.py:59) browser_name=browser_name,
(...)
[62](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chromium/webdriver.py:62) ignore_proxy=options._ignore_local_proxy,
[63](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chromium/webdriver.py:63) )
[65](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/chromium/webdriver.py:65) try:
File d:\PycharmProjects\master_db_updater\.venv\Lib\site-packages\selenium\webdriver\common\service.py:98, in Service.start(self)
[91](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:91) def start(self) -> None:
[92](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:92) """Starts the Service.
[93](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:93)
[94](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:94) :Exceptions:
[95](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:95) - WebDriverException : Raised either when it can't start the service
[96](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:96) or when it can't connect to the service
[97](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:97) """
---> [98](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:98) self._start_process(self._path)
[100](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:100) count = 0
[101](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:101) while True:
File d:\PycharmProjects\master_db_updater\.venv\Lib\site-packages\selenium\webdriver\common\service.py:208, in Service._start_process(self, path)
[205](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:205) start_info.dwFlags = subprocess.CREATE_NEW_CONSOLE | subprocess.STARTF_USESHOWWINDOW
[206](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:206) start_info.wShowWindow = subprocess.SW_HIDE
--> [208](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:208) self.process = subprocess.Popen(
[209](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:209) cmd,
[210](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:210) env=self.env,
[211](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:211) close_fds=close_file_descriptors,
[212](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:212) stdout=self.log_output,
[213](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:213) stderr=self.log_output,
[214](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:214) stdin=PIPE,
[215](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:215) creationflags=self.creation_flags,
[216](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:216) startupinfo=start_info,
[217](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:217) **self.popen_kw,
[218](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:218) )
[219](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:219) logger.debug(
[220](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:220) "Started executable: `%s` in a child process with pid: %s using %s to output %s",
[221](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:221) self._path,
(...)
[224](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:224) self.log_output,
[225](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:225) )
[226](file:///D:/PycharmProjects/master_db_updater/.venv/Lib/site-packages/selenium/webdriver/common/service.py:226) except TypeError:
File ~\AppData\Local\Programs\Python\Python311\Lib\subprocess.py:1026, in Popen.__init__(self, args, bufsize, executable, stdin, stdout, stderr, preexec_fn, close_fds, shell, cwd, env, universal_newlines, startupinfo, creationflags, restore_signals, start_new_session, pass_fds, user, group, extra_groups, encoding, errors, text, umask, pipesize, process_group)
[1022](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1022) if self.text_mode:
[1023](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1023) self.stderr = io.TextIOWrapper(self.stderr,
[1024](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1024) encoding=encoding, errors=errors)
-> [1026](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1026) self._execute_child(args, executable, preexec_fn, close_fds,
[1027](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1027) pass_fds, cwd, env,
[1028](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1028) startupinfo, creationflags, shell,
[1029](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1029) p2cread, p2cwrite,
[1030](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1030) c2pread, c2pwrite,
[1031](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1031) errread, errwrite,
[1032](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1032) restore_signals,
[1033](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1033) gid, gids, uid, umask,
[1034](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1034) start_new_session, process_group)
[1035](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1035) except:
[1036](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1036) # Cleanup if the child failed starting.
[1037](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1037) for f in filter(None, (self.stdin, self.stdout, self.stderr)):
File ~\AppData\Local\Programs\Python\Python311\Lib\subprocess.py:1538, in Popen._execute_child(self, args, executable, preexec_fn, close_fds, pass_fds, cwd, env, startupinfo, creationflags, shell, p2cread, p2cwrite, c2pread, c2pwrite, errread, errwrite, unused_restore_signals, unused_gid, unused_gids, unused_uid, unused_umask, unused_start_new_session, unused_process_group)
[1536](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1536) # Start the process
[1537](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1537) try:
-> [1538](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1538) hp, ht, pid, tid = _winapi.CreateProcess(executable, args,
[1539](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1539) # no special security
[1540](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1540) None, None,
[1541](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1541) int(not close_fds),
[1542](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1542) creationflags,
[1543](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1543) env,
[1544](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1544) cwd,
[1545](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1545) startupinfo)
[1546](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1546) finally:
[1547](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1547) # Child is launched. Close the parent's copy of those pipe
[1548](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1548) # handles that only the child should have open. You need
(...)
[1551](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1551) # pipe will not close when the child process exits and the
[1552](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1552) # ReadFile will hang.
[1553](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1553) self._close_pipe_fds(p2cread, p2cwrite,
[1554](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1554) c2pread, c2pwrite,
[1555](https://file+.vscode-resource.vscode-cdn.net/d%3A/PycharmProjects/master_db_updater/~/AppData/Local/Programs/Python/Python311/Lib/subprocess.py:1555) errread, errwrite)
OSError: [WinError 193] %1 is not a valid Win32 application
Found the solution, just use this instead
driver = webdriver.Chrome()
rather than webdriver_manager. Seems selenium has now been able to auto update the driver
import pandas as pd import mysql.connector from bs4 import BeautifulSoup from time import sleep from datetime import datetime from selenium import webdriver from selenium.webdriver.common.keys import Keys from webdriver_manager.chrome import ChromeDriverManager from selenium.webdriver.chrome.service import Service from selenium.common.exceptions import NoSuchElementException servico = Service(ChromeDriverManager().install()) navegador = webdriver.Chrome(service=servico)
OSError: [WinError 193] %1 não é um aplicativo Win32 válido