Exemple #1
0
    def instantiateBrowser(self):

        if self.browser == None:
            chrome_options = webdriver.ChromeOptions()
            mobile_emulation = {"deviceName": "iPhone 7"}
            chrome_options = webdriver.ChromeOptions()
            chrome_options.add_argument('--no-sandbox')
            chrome_options.add_argument("--disable-setuid-sandbox")
            chrome_options.add_experimental_option("mobileEmulation",
                                                   mobile_emulation)
            chrome_options.add_argument('--disable-extensions')
            chrome_options.add_argument('--no-sandbox')

            path = config().getConstant("session_path")
            chrome_options.add_argument("user-data-dir={}".format(path))

            if constants.headless:
                chrome_options.add_argument('--headless')
                chrome_options.add_argument(
                    '--disable-gpu')  # Last I checked this was necessary.

            capabilities = DesiredCapabilities.CHROME
            if config().get("use_proxy"):
                print("using proxy")
                proxy_address = config().get("proxy_address")
                proxy = Proxy()
                proxy.socksPassword = config().get("proxy_password")
                proxy.socksUsername = config().get("proxy_username")
                proxy.ftpProxy = proxy_address
                proxy.httpProxy = proxy_address
                proxy.sslProxy = proxy_address
                proxy.proxy_type = {'ff_value': 1, 'string': 'MANUAL'}
                proxy.add_to_capabilities(capabilities)

            else:
                capabilities.pop('proxy', None)

            self.browser = webdriver.Chrome(chrome_options=chrome_options,
                                            desired_capabilities=capabilities)

            if True:  ## checking ip address
                print(capabilities)
                # print("screenshot")
                # self.browser.get("https://whatismyipaddress.com/")
                # self.browser.save_screenshot(config().get("bot_account_id") + ".png")

            AutoLogin(self.browser).login()