I am trying to use Selenium in Repl but for some reason it does not seem to work is there a way I can fix this?
chrome_options = Options()
chrome_options.add_argument('--no-sandbox')
chrome_options.add_argument('--disable-dev-shm-usage')
driver = webdriver.Chrome(options=chrome_options)
driver.get("https://www.youtube.com/watch?v=dQw4w9WgXcQ")
views = driver.find_element_by_class("view-count style-scope ytd-video-view-count-renderer")
print(views)
Here are the two errors I seem to be getting.
Traceback (most recent call last):
File "/home/runner/JustStuff/venv/lib/python3.8/site-packages/selenium/webdriver/common/service.py", line 71, in start
self.process = subprocess.Popen(cmd, env=self.env,
File "/nix/store/p21fdyxqb3yqflpim7g8s1mymgpnqiv7-python3-3.8.12/lib/python3.8/subprocess.py", line 858, in __init__
self._execute_child(args, executable, preexec_fn, close_fds,
File "/nix/store/p21fdyxqb3yqflpim7g8s1mymgpnqiv7-python3-3.8.12/lib/python3.8/subprocess.py", line 1704, in _execute_child
raise child_exception_type(errno_num, err_msg, err_filename)
FileNotFoundError: [Errno 2] No such file or directory: 'chromedriver'
Traceback (most recent call last):
File "main.py", line 15, in <module>
driver = webdriver.Chrome(options=chrome_options)
File "/home/runner/JustStuff/venv/lib/python3.8/site-packages/selenium/webdriver/chrome/webdriver.py", line 70, in __init__
super(WebDriver, self).__init__(DesiredCapabilities.CHROME['browserName'], "goog",
File "/home/runner/JustStuff/venv/lib/python3.8/site-packages/selenium/webdriver/chromium/webdriver.py", line 90, in __init__
self.service.start()
File "/home/runner/JustStuff/venv/lib/python3.8/site-packages/selenium/webdriver/common/service.py", line 81, in start
raise WebDriverException(
selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://chromedriver.chromium.org/home
CodePudding user response:
You need to go to replit.nix , click on hidden files and you are going to see it, you need to import pkgs.chromium and pkgs.chromedriver into deps
{ pkgs }: {
deps = [
pkgs.python38Full
pkgs.chromium
pkgs.chromedriver
];
don't forget to refresh the page