def __init__(self, running, browser, send_mails, format_list):
super(CollectorProcess, self).__init__()
self.format_list = format_list
self.running = running
self.send_mails = send_mails
# Setting "Downloads" path up
self.download_path = os.path.abspath(os.path.join(os.curdir, "RAW-collection"))
if not os.path.exists(self.download_path):
os.mkdir(self.download_path)
# Selecting browser
self.driver = None
if browser == "chrome":
chrome_options = webdriver.ChromeOptions()
preferences = {"download.default_directory": self.download_path}
chrome_options.add_experimental_option("prefs", preferences)
# Loading the page
self.driver = webdriver.Chrome(chrome_options=chrome_options)
elif browser == "firefox":
profile = webdriver.FirefoxProfile()
profile.set_preference("browser.download.folderList", 2)
profile.set_preference("browser.download.dir", self.download_path)
profile.set_preference("browser.download.manager.alertOnEXEOpen", False)
profile.set_preference("browser.helperApps.neverAsk.saveToDisk",
"application/msword, application/csv, application/ris, text/csv, image/png, " +
"application/pdf, text/html, text/plain, application/zip, application/x-zip, " +
"application/x-zip-compressed, application/download, application/octet-stream")
profile.set_preference("browser.download.manager.showWhenStarting", False)
profile.set_preference("browser.download.manager.focusWhenStarting", False)
profile.set_preference("browser.download.useDownloadDir", True)
profile.set_preference("browser.helperApps.alwaysAsk.force", False)
profile.set_preference("browser.download.manager.alertOnEXEOpen", False)
profile.set_preference("browser.download.manager.closeWhenDone", True)
profile.set_preference("browser.download.manager.showAlertOnComplete", False)
profile.set_preference("browser.download.manager.useWindow", False)
profile.set_preference("services.sync.prefs.sync.browser.download.manager.showWhenStarting", False)
profile.set_preference("pdfjs.disabled", True)
self.driver = webdriver.Firefox(firefox_profile=profile)
else:
raise ValueError('Browser can only be either "chrome" or "firefox"')
self.currently_open_battles = set()
self.leave_que = []
self.format_index = -1
self.format_length = len(self.format_list)
评论列表
文章目录