我有这两个功能:
def get_chromedriver(headless = False):
import os
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
options = Options()
options.binary_location = '/usr/bin/google-chrome'
options.add_argument('user-data-dir=' + os.environ['HOME'] + '/.config/chromedriver')
options.add_experimental_option('detach', True)
options.add_experimental_option('excludeSwitches', ['enable-automation'])
options.add_experimental_option('useAutomationExtension', False)
options.headless = headless
driver = webdriver.Chrome(executable_path='/usr/bin/chromedriver', options=options)
return driver
def get_firefoxdriver(headless = False):
import os
from selenium import webdriver
from selenium.webdriver.firefox.options import Options
options = Options()
options.binary_location = '/usr/bin/firefox'
options.add_argument('user-data-dir=' + os.environ['HOME'] + '/.config/firefoxdriver')
options.add_experimental_option('detach', True)
options.add_experimental_option('excludeSwitches', ['enable-automation'])
options.add_experimental_option('useAutomationExtension', False)
options.headless = headless
driver = webdriver.Firefox(executable_path='/usr/bin/geckodriver', options=options)
return driver
get_chromedriver 函数可以完美运行,但 get_firefoxdriver 不能,它是 get_chromedriver 函数的副本。
如何使 get_firefoxdriver 函数在功能上等同于 get_chromedriver 函数,除了路径、webdriver 和使用的浏览器?