У меня есть драйвер chrome и браузер chrome, и я также могу успешно выполнять код, но PDF не генерируется. Его работа на Windows для меня. Вот мой код Linux: Redhat Chrome Браузер: версия 80.0.3987 Chrome драйвер
Возможно, мне придется использовать дополнительные аргументы для linux:
from selenium import webdriver
import json
chrome_options = webdriver.ChromeOptions()
settings = {
"recentDestinations": [{
"id": "Save as PDF",
"origin": "local",
"account": "",
}],
"selectedDestinationId": "Save as PDF",
"version": 2
}
prefs = {'printing.print_preview_sticky_settings.appState': json.dumps(settings),
"savefile.default_directory": "/users",
"download.prompt_for_download": False,
"download.directory_upgrade": True,
"download.safebrowsing.enabled": True}
chrome_options.add_argument("--headless") # Runs Chrome in headless mode.
chrome_options.add_argument('--no-sandbox') # Bypass OS security model
chrome_options.add_experimental_option('prefs', prefs)
chrome_options.add_argument('--kiosk-printing')
driver = webdriver.Chrome('/usr/local/bin/chromedriver', chrome_options=chrome_options, service_args=['--verbose', '--log-path=/users/slack/compliance/chromedriver.log'])
driver.get('https://www.gmail.com/')
driver.save_screenshot("screenshot1.png")
driver.execute_script('window.print();')
html = driver.page_source
driver.quit()