美文网首页
「selenium」记学习过程

「selenium」记学习过程

作者: big简 | 来源:发表于2020-06-30 12:02 被阅读0次

    一、实现页面自动慢慢下滑到底部

    # 页面滑动到底部
    def slide_page():
        temp_height = 0
          while (1):
              js = "window.scrollBy(0,200)"   # 每次向下滚动200高度
              driver.execute_script(js)
              time.sleep(0.2)
              # 获取当前滚动条距离顶部的距离
              check_height = driver.execute_script(
                  "return document.documentElement.scrollTop || window.pageYOffset || document.body.scrollTop;")
              if check_height == temp_height:
                  break
              temp_height = check_height
    

    二、
    selenium.common.exceptions.WebDriverException: Message: invalid session id
    原因是因为在调用driver的时候发现已经调用了driver.close()。因此driver失效了

    三、 校验页面按钮的时候结合滑动页面至元素可见

    # 滑动至元素可见
    def slideToElement(xpath):
        ele = driver.find_elements_by_xpath(xpath)
        ele = ele[0]
        driver.execute_script("arguments[0].scrollIntoView();", ele)
        time.sleep(1)
    
    '''
    
    @ pageName          检查的页面名称/模块
    @ pageurl           检查的页面url
    @ xpathAndTitle     key:页面按钮xpath, value:按钮点击后页面标题          type -> dict
    
    '''
    
    def checkButton(pageName, pageurl, xpathAndTitle):
        urlOpen(url=pageurl)
        try:
            for xpath,title in xpathAndTitle.items():
                logg.info(f'按钮 xpath = {xpath}, 跳转后页面 title = {title}')
                if elementExists(xpath):
                    click(xpath)
                else:
                    slideToElement(xpath)
                    click(xpath)
                if driver.title == title:
                    logg.info(f'{pageName} 按钮点击跳转正确。')
                    driver.back()
                    time.sleep(1)
                else:
                    logg.error(f'{pageName} 按钮失效,请检查。')
                    close()
        except Exception as e:
            close()
            logg.error(f'{pageName}按钮失效,请检查。\n{e}')
    

    持续更新ing

    相关文章

      网友评论

          本文标题:「selenium」记学习过程

          本文链接:https://www.haomeiwen.com/subject/elatqktx.html