collector.py 文件源码

python
阅读 33 收藏 0 点赞 0 评论 0

项目:betaPika 作者: alchemistake 项目源码 文件源码
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)
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号