ACTableau.py 文件源码

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

项目:AnalyticContainer 作者: DataKitchen 项目源码 文件源码
def selenium_login(self):
        try:
            self.pydriver.get(self.config_dict[TABLEAU_SERVER_URL])
            time.sleep(2)
            self.pydriver.page_source.encode('utf-8')
            logins = self.pydriver.find_elements(By.XPATH, '//input')
            if logins is None or len(logins) == 0:
                ACLogger().get_logger().error('selenium_login error 1')
                return False

            the_login = logins[0]
            password = logins[1]
            the_login.send_keys(self.config_dict[TABLEAU_SERVER_USERNAME])
            password.send_keys(self.config_dict[TABLEAU_SERVER_PASSWORD])
            buttons = self.pydriver.find_elements(By.XPATH, '//button')
            button = None
            for b in buttons:
                if str(b.text) == 'Sign In':
                    button = b
            if button is None:
                ACLogger().get_logger().error('selenium_login error 2')
                return False
            button.click()
            time.sleep(2)
            if 'Workbooks' not in self.pydriver.title:
                ACLogger().get_logger().error('selenium_login error 3')
                return False
        except (WebDriverException, StaleElementReferenceException, HTTPException, ResponseNotReady) , e:
            ACLogger().get_logger().error('selenium_login error: %s' % str(e))
            return False
        ACLogger().get_logger().info(
            'Logged in %s successfully, next page title: %s' % (self.config_dict[TABLEAU_SERVER_URL], self.pydriver.title))
        return True
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号