Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/375.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 我能';使用pytest在网页上找不到任何元素,但我可以使用console找到相同的元素_Javascript_Html_Python 3.x_Selenium_Pytest - Fatal编程技术网

Javascript 我能';使用pytest在网页上找不到任何元素,但我可以使用console找到相同的元素

Javascript 我能';使用pytest在网页上找不到任何元素,但我可以使用console找到相同的元素,javascript,html,python-3.x,selenium,pytest,Javascript,Html,Python 3.x,Selenium,Pytest,我可以在控制台(F12)的页面上找到元素(使用css或xpath) 但我无法使用Selenium(pytest)找到相同的元素 元素代码: <span tabindex="0" role="button" on="tap:category--1.scrollTo(duration=200), AMP.setState({selectedCategoryId: -1, showDropdown: false})" data-vars-category-

我可以在控制台(F12)的页面上找到元素(使用css或xpath)

但我无法使用Selenium(pytest)找到相同的元素

元素代码:

<span tabindex="0" role="button" on="tap:category--1.scrollTo(duration=200),
                    AMP.setState({selectedCategoryId: -1, showDropdown: false})" data-vars-category-name="Most Popular" class="menu-item item-1 category-selector " data-amp-bind-class="'menu-item item-1 category-selector ' + (
                      ((!selectedCategoryId &amp;&amp; -1 == -2) ||
                      -1 == selectedCategoryId) ? 'selected' : ''
                    )" i-amphtml-binding="" i-amphtml-key="10">Most Popular</span>
最受欢迎
我做错了什么?我可能应该采取额外的步骤来查找页面上的项目

!!!我在页面上找不到任何元素:
您的CSS选择器工作正常。有一个iframe。您可以使用下面的代码切换到框架

driver.switch_to.frame(iframe)
移动到iframe后,以下是返回默认内容的方法:

driver.switch_to.default_content()
我尝试了下面的Java代码,它成功了

        List<WebElement> frames = driver.findElements(By.tagName("iframe"));
        System.out.println("Frame Size: "+ frames.size());              
        for(WebElement frame:frames){
            try {
                driver.switchTo().frame(frame);
                break;
            }catch(NoSuchFrameException e) {
                e.printStackTrace();
            }
        }

        driver.findElement(By.cssSelector("span[data-vars-category-name='Most Popular']")).click();
List frames=driver.findElements(按.tagName(“iframe”);
System.out.println(“帧大小:+frames.Size());
for(WebElement框架:框架){
试一试{
驱动程序.切换到().帧(帧);
打破
}捕获(无捕获){
e、 printStackTrace();
}
}
findelelement(By.cssSelector(“span[data vars category name='Most Popular']”)。单击();
driver.switch_to.default_content()
        List<WebElement> frames = driver.findElements(By.tagName("iframe"));
        System.out.println("Frame Size: "+ frames.size());              
        for(WebElement frame:frames){
            try {
                driver.switchTo().frame(frame);
                break;
            }catch(NoSuchFrameException e) {
                e.printStackTrace();
            }
        }

        driver.findElement(By.cssSelector("span[data-vars-category-name='Most Popular']")).click();