-
胡说叔叔
这是另一个解决方案,webdriver_manager不支持。此脚本将下载最新的 chrome 驱动程序版本。import requestsimport wgetimport zipfileimport os# get the latest chrome driver version numberurl = 'https://chromedriver.storage.googleapis.com/LATEST_RELEASE'response = requests.get(url)version_number = response.text# build the donwload urldownload_url = "https://chromedriver.storage.googleapis.com/" + version_number +"/chromedriver_win32.zip"# download the zip file using the url built abovelatest_driver_zip = wget.download(download_url,'chromedriver.zip')# extract the zip filewith zipfile.ZipFile(latest_driver_zip, 'r') as zip_ref: zip_ref.extractall() # you can specify the destination folder path here# delete the zip file downloaded aboveos.remove(latest_driver_zip)
-
倚天杖
这是 Python 的另一种方法 -import chromedriver_autoinstallerfrom selenium import webdriveropt = webdriver.ChromeOptions()opt.add_argument("--start-maximized")chromedriver_autoinstaller.install()driver = webdriver.Chrome(options=opt)driver.get('https://stackoverflow.com/')这里有更多信息https://pypi.org/project/chromedriver-autoinstaller/
-
猛跑小猪
Webdriver Manager 会为你做这件事。请参考此链接https://pypi.org/project/webdriver-manager/
-
饮歌长啸
我有一个稍微漂亮一点的版本它会检测到你的 chrome 版本,获取正确的驱动程序def download_chromedriver(): def get_latestversion(version): url = 'https://chromedriver.storage.googleapis.com/LATEST_RELEASE_' + str(version) response = requests.get(url) version_number = response.text return version_number def download(download_url, driver_binaryname, target_name): # download the zip file using the url built above latest_driver_zip = wget.download(download_url, out='./temp/chromedriver.zip') # extract the zip file with zipfile.ZipFile(latest_driver_zip, 'r') as zip_ref: zip_ref.extractall(path = './temp/') # you can specify the destination folder path here # delete the zip file downloaded above os.remove(latest_driver_zip) os.rename(driver_binaryname, target_name) os.chmod(target_name, 755) if os.name == 'nt': replies = os.popen(r'reg query "HKEY_CURRENT_USER\Software\Google\Chrome\BLBeacon" /v version').read() replies = replies.split('\n') for reply in replies: if 'version' in reply: reply = reply.rstrip() reply = reply.lstrip() tokens = re.split(r"\s+", reply) fullversion = tokens[len(tokens) - 1] tokens = fullversion.split('.') version = tokens[0] break target_name = './bin/chromedriver-win-' + version + '.exe' found = os.path.exists(target_name) if not found: version_number = get_latestversion(version) # build the donwload url download_url = "https://chromedriver.storage.googleapis.com/" + version_number +"/chromedriver_win32.zip" download(download_url, './temp/chromedriver.exe', target_name) elif os.name == 'posix': reply = os.popen(r'chromium --version').read() if reply != '': reply = reply.rstrip() reply = reply.lstrip() tokens = re.split(r"\s+", reply) fullversion = tokens[1] tokens = fullversion.split('.') version = tokens[0] else: reply = os.popen(r'google-chrome --version').read() reply = reply.rstrip() reply = reply.lstrip() tokens = re.split(r"\s+", reply) fullversion = tokens[2] tokens = fullversion.split('.') version = tokens[0] target_name = './bin/chromedriver-linux-' + version print('new chrome driver at ' + target_name) found = os.path.exists(target_name) if not found: version_number = get_latestversion(version) download_url = "https://chromedriver.storage.googleapis.com/" + version_number +"/chromedriver_linux64.zip" download(download_url, './temp/chromedriver', target_name)
-
明月笑刀无情
截至 2021 年 8 月,这是状态:-chromedriver-自动安装程序自动下载并安装支持当前安装的 chrome 版本的 chromedriver。此安装程序支持 Linux、MacOS 和 Windows 操作系统。安装pip install chromedriver-autoinstaller用法Just type import chromedriver_autoinstaller in the module you want to use chromedriver.例子from selenium import webdriverimport chromedriver_autoinstallerchromedriver_autoinstaller.install() # Check if the current version of chromedriver exists # and if it doesn't exist, download it automatically, # then add chromedriver to pathdriver = webdriver.Chrome()driver.get("http://www.python.org")assert "Python" in driver.title