python+selenium 自己实现显示等待

 # 第二个方法:点击页面顶部的tab通讯录
    def goto_member_from_tab(self):
        # 点击通讯录
        self.find(By.ID, "menu_contacts").click()
        # 点击添加联系人,第二种方法等待页面可点击后再点击
        # self.find(By.XPATH, '//*[@id="js_contacts39"]/div/div[2]/div/div[2]/div[3]/div[1]/a[1]').click()
        # locator=(By.XPATH, '//*[@id="js_contacts39"]/div/div[2]/div/div[2]/div[3]/div[1]/a[1]')
        locator=(By.CSS_SELECTOR, ".js_has_member>div:nth-child(1)>a:nth-child(2)")

        # 自己定义一个显示等待函数,实现等页面跳转后进行下一步操作
        def wait_for_next(x: WebDriver):
            try:
                # 将传进来的locator解包,因为locator中有两个元素
                x.find_element(*locator).click()
                # 等能定位到输入框输入姓名元素后再允许点击
                return x.find_element(By.ID, "username")
            except:
                return False

        # x不需要传值,会将webdriver传递进去
        WebDriverWait(self.driver, 20).until(wait_for_next)

        return AddMemberPage(self.driver)
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容