Selenium Webdriver脚本适用于调试模式(F12)或查看源(ctrl + U)的html代码?

时间:2015-09-04 06:51:56

标签: html selenium webdriver

我制作了一个selenium WebDriver脚本,用于查找网页中存在的面包屑的Meta标签。但这个元标记为" Home"页面(第一个痕迹)在调试模式下不可见,而在源代码(ctrl + U)上可见。其余面包屑的元标记在调试模式下可见。脚本无法找到" Home"的元标记。这是否意味着Selenium Webdriver脚本仅适用于通过调试模式可见的代码?有什么方法可以解决这个问题吗?

以下是Meta标签,它在调试模式下不可见,但在源代码中可见:

<meta itemprop="position" content="1" />

要测试的网址: https://www.ennovatesoftware.com/en-gb/international-courier-services/tanzania-parcel-delivery

List <WebElement> breadcrumbs=null;
driver.get("https://www.ennovatesoftware.com/en-gb/international-courier-services/tanzania-parcel-delivery");
breadcrumbs = driver.findElements(By.xpath("//*@id='newBreadCrumb']/div/ul/li"));

            if(breadcrumbs.size()==0)
            {System.out.println("No BreadCrumbs present");
        continue;
            }
            else 
            {   
             try{
            if(driver.findElement(By.xpath("//*[@id='newBreadCrumb']/div/ul")).getAttribute("itemtype").equals("http://schema.org/BreadcrumbList"))
                {
                    for (WebElement W: breadcrumbs)
                    { 
                        bc=bc+1;
                try{
if( Integer.parseInt( W.findElement(By.tagName("meta")).getAttribute("content"))==bc && W.findElement(By.tagName("meta")).getAttribute("itemprop").equals("position"))
                    p=p+1;
                       }
                catch(Exception e)
                    {}
                     }
                }
            }
                catch(Exception e)
                {System.out.println("Fail");}
            }

            if(p==bc)
                System.out.println("Pass");
            else
                System.out.println("Fail");

0 个答案:

没有答案