为什么使用chromedriver在无头模式下无法下载文件?

时间:2019-09-27 11:18:32

标签: python python-3.x selenium selenium-webdriver google-chrome-headless

为什么下载文件无法在无头铬操作系统中工作,而在正常模式下却能正常工作?

我已经尝试过多次调试,并且每次在正常模式下都可以完美工作时,而在无头模式下它却无能为力。 这是我的代码的一部分

import selenium
import os
from selenium import webdriver
from selenium.webdriver.support.ui import Select
from selenium.webdriver import ActionChains

cwd = os.getcwd()
options = webdriver.ChromeOptions()
options.add_argument('--no-sandbox')
options.add_argument('--disable-dev-shm-usage')
options.add_argument('--ignore-certificate-errors')
options.add_argument('--headless')
options.add_argument('window-size=1366x768')
options.add_argument('--test-type')
prefs = {
"download.default_directory": '%s\\images'%cwd,
"download.prompt_for_download": False,
"download.directory_upgrade": True
}
options.add_experimental_option('prefs', prefs)
driver = webdriver.Chrome(options=options)

def atari(driver,message):
    driver.get('https://deathgenerator.com/#atari8bit')
    textPlace = driver.find_element_by_xpath('//*[@id="sourcetext"]')
    textPlace.clear()
    textPlace.send_keys(message)
    download = driver.find_element_by_xpath('//*[@id="save"]/img')
    download.click()
    print('Downloaded image!')

atari(driver,message = 'READY?')

0 个答案:

没有答案