运行 Selenium on Google Colab 可能吗?

Is running Selenium on Google Colab possible?

我无法直接从 Google Colab 使用 Selenium。每当我在本地机器上 运行 下面的代码时,我都会成功,但是我想在 Colab 中测试同一个应用程序,但是我测试的所有选项都无法成功。

import warnings
warnings.filterwarnings('ignore')
from bs4 import BeautifulSoup
from selenium import webdriver
from selenium.common.exceptions import InvalidSessionIdException
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.chrome.options import Options
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from google.colab import drive
drive.mount('/content/gdrive', force_remount=True)

options = webdriver.ChromeOptions()
options.add_argument("--disable-blink-features=AutomationControlled")
options.add_argument('--ignore-certificate-errors-spki-list')
options.add_argument('--ignore-ssl-errors')
options.add_experimental_option('excludeSwitches', ['enable-logging'])
options.add_experimental_option("prefs", {"profile.managed_default_content_settings.images": 2}) 
options.add_argument("--no-sandbox") 
options.add_argument("--disable-setuid-sandbox") 
options.add_argument("--disable-dev-shm-using") 
options.add_argument("--disable-extensions") 
options.add_argument("--disable-gpu") 
options.add_argument("start-maximized") 
options.add_argument("disable-infobars")
options.add_argument(r"user-data-dir=.\cookies\test") 
options.binary_location = '/usr/bin/google-chrome'

driver = webdriver.Chrome(options=options, executable_path='/usr/bin/chromedriver') #Error occurs in this function
driver.implicitly_wait(5)

print("Current session is {}".format(driver.session_id))

我还运行以下命令:

!apt-get update
!apt install chromium-chromedriver
!cp /usr/lib/chromium-browser/chromedriver /usr/bin

尝试 运行 上述代码后,出现以下消息:

**WebDriverException: Message: unknown error: no chrome binary at /usr/bin/google-chrome**

我是不是做错了什么?

尝试删除此行

options.binary_location = '/usr/bin/google-chrome'

并查看它是否适用于默认二进制位置。别忘了安装驱动

!apt-get update 
!apt install chromium-chromedriver

我创建了一个库来帮助简化它。

!pip install kora
from kora.selenium import wd  # web driver
print(wd.session_id)  # 8be87366df11b09b552fb4ad7efbd696