Switched to docker compose and wasted hours trying to have standalone firefox
This commit is contained in:
		| @@ -2,7 +2,6 @@ import time | ||||
| import datetime | ||||
| import logging | ||||
| import os | ||||
| import sys | ||||
| import base64 | ||||
| import requests | ||||
| from selenium import webdriver | ||||
| @@ -20,28 +19,34 @@ class PDFDownloader: | ||||
|     running = False | ||||
|      | ||||
|     def start(self): | ||||
|         options=Options() | ||||
|         try: | ||||
|             self.finish() | ||||
|         except: | ||||
|             self.logger.info("gecko driver not yet running") | ||||
|         options = webdriver.FirefoxOptions() | ||||
|         options.profile = config["browser_profile_path"] | ||||
|         if "notheadless" in sys.argv: | ||||
|             self.logger.warning("Opening browser GUI because of Argument 'notheadless'") | ||||
|         else: | ||||
|         # should be options.set_preference("profile", config["browser_profile_path"]) as of selenium 4 but that doesn't work | ||||
|  | ||||
|         if os.getenv("HEADLESS", "false") == "true": | ||||
|             options.add_argument('--headless') | ||||
|         else: | ||||
|             self.logger.warning("Opening browser GUI because of 'HEADLESS=true'") | ||||
|  | ||||
|         # Print to pdf | ||||
|         options.set_preference("print_printer", "Mozilla Save to PDF") | ||||
|         options.set_preference("print.always_print_silent", True) | ||||
|         options.set_preference("print.show_print_progress", False) | ||||
|         options.set_preference('print.save_as_pdf.links.enabled', True) | ||||
|  | ||||
|         # Just save if the filetype is pdf already, does not work! | ||||
|  | ||||
|         options.set_preference("print.printer_Mozilla_Save_to_PDF.print_to_file", True) | ||||
|         options.set_preference("browser.download.folderList", 2) | ||||
|         # options.set_preference("browser.helperApps.neverAsk.saveToDisk", "application/pdf") | ||||
|         # options.set_preference("pdfjs.disabled", True) | ||||
|         options.set_preference("browser.download.dir", config["default_download_path"]) | ||||
|  | ||||
|         self.logger.info("Now Starting gecko driver") | ||||
|         self.driver = webdriver.Firefox(options=options) | ||||
|         self.logger.info("Starting gecko driver") | ||||
|         self.driver = webdriver.Firefox( | ||||
|             options = options, | ||||
|             service = webdriver.firefox.service.Service( | ||||
|                 log_path = f'{config["local_storage_path"]}/geckodriver.log' | ||||
|         )) | ||||
|          | ||||
|         residues = os.listdir(config["default_download_path"]) | ||||
|         for res in residues: | ||||
| @@ -54,6 +59,7 @@ class PDFDownloader: | ||||
|             self.start() # relaunch the dl util     | ||||
|  | ||||
|     def finish(self): | ||||
|         self.logger.info("Exiting gecko driver") | ||||
|         self.driver.quit() | ||||
|         self.running = False | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Remy Moll
					Remy Moll