我创建了一个使用Selenium和Webdriver(Chromedriver(的python脚本。完成此脚本后,我使用 cx_freeze 将脚本编译为独立的 exe 文件,我可以双击该文件来执行脚本。但是,对于硒,我一直在使用我下载的chromedriver文件,该文件与我安装在PC上的chrome应用程序一起工作。
我想做的,或尝试做的是让我的exe文件与chromedriver一起工作,而不是要求用户将谷歌浏览器安装到他们的计算机上。无论如何,我可以将chrome作为软件包包含在同一个目录中以解决此问题或其他问题吗?
我也对其他想法持开放态度。
您始终可以捆绑脱机安装程序并提示其安装,然后只需运行可执行文件即可安装它。(可在此处获得(
注意:您可能需要调查一些许可问题。
否则,请使用webbrowser.open('https://www.google.com/chrome/browser/')
将他们定向到 chrome 的安装页面。像这样:
try:
selenium.webbrowser('chrome') # Or whatever the command is
except NameOfExceptionWhenNoBrowserHere:
# If you are opening the web page:
import webbrowser
INSTALL_PAGE = 'https://www.google.com/chrome/browser/'
print('You need to have Google chrome installed.')
print(INSTALL_PAGE)
if input('Open ' + INSTALL_PAGE + '? [yes/no]').lower().startswith('y'):
webbrowser.open(INSTALL_PAGE) # Uses default browser
# If you are running the offline installer
import subprocess
import os
_file_dir = os.path.dirname(os.path.realpath(__file__))
print('You need to have Google chrome installed.')
print('Will now open installer')
# _file_dir is the directory of the python file.
# If the installer is in the same directory, run it like this.
subprocess.call(os.path.join(_file_dir, 'install_chrome.exe'))