当前位置: 首页 > 面试题库 >

如何使用硒浏览整个网站?

洪飞扬
2023-03-14
问题内容

是否可以使用selenium浏览给定URL(网站)的所有URI ?

我的目标是使用具有给定选择的URL的硒来启动firefox浏览器(由于此网站,我知道该怎么做),然后让firefox浏览URL(该网站)拥有的所有页面。我感谢有关如何在Python中进行操作的任何提示/帮助。


问题答案:

您可以在类中使用递归方法,例如下面给出的方法。

public class RecursiveLinkTest {
    //list to save visited links
    static List<String> linkAlreadyVisited = new ArrayList<String>();
    WebDriver driver;

    public RecursiveLinkTest(WebDriver driver) {
        this.driver = driver;
    }

    public void linkTest() {
        // loop over all the a elements in the page
        for(WebElement link : driver.findElements(By.tagName("a")) {
            // Check if link is displayed and not previously visited
            if (link.isDisplayed() 
                        && !linkAlreadyVisited.contains(link.getText())) {
                // add link to list of links already visited
                linkAlreadyVisited.add(link.getText());
                System.out.println(link.getText());
                // click on the link. This opens a new page
                link.click();
                // call recursiveLinkTest on the new page
                new RecursiveLinkTest(driver).linkTest();
            }
        }
        driver.navigate().back();
    }

    public static void main(String[] args) throws InterruptedException {
        WebDriver driver = new FirefoxDriver();
        driver.get("http://newtours.demoaut.com/");
        // start recursive linkText
        new RecursiveLinkTest(driver).linkTest();
    }
}

希望这对您有所帮助。



 类似资料:
  • 问题内容: 是否可以使用selenium浏览给定URL(网站)的所有URI ? 我的目标是使用具有给定选择的URL的selenium来启动firefox浏览器(由于有了此网站,我知道该怎么做),然后让firefox浏览URL(该网站)拥有的所有页面。我感谢有关如何在Python中进行操作的任何提示/帮助。 问题答案: 您可以在类中使用递归方法,例如下面给出的方法。 希望这对您有所帮助。

  • 我正在使用硒网格(JUNIT,Java)在浏览器的多个实例上运行我的测试用例。我使用“java -jar -jar 硒-服务器-独立-2.20.0.jar -角色中心”来运行中心。和“java -jar 硒-服务器-独立-2.20.0.jar -角色 web驱动程序 -hub http:// :4444/网格/寄存器 -端口 5566” 来运行节点。 我验证了两者都运行正常。 但是当我通过ecli

  • 问题内容: 我想使用Python在本地计算机的网络浏览器(Chrome或Internet Explorer)中打开网站。 有没有可以为我做到这一点的模块? 问题答案: 该模块看起来很有希望

  • 我试图启动firefox浏览器,并使用selenium webdriver打开一个网页示例< code>google.com。我成功地启动了浏览器,但启动网页时出现了一些问题。我得到的错误是 线程“main”中的异常 org . open QA . selenium . remote . unreachablebrowserexception:无法启动新会话。 可能的原因是远程服务器地址无效或浏览

  • 问题内容: 如何防止使用JavaScript浏览网页? 问题答案: 使用可以显示消息,但不会中断导航(因为为时已晚)。但是,使用会中断导航: 注意:返回空字符串,因为较新的浏览器提供了诸如“任何未保存的更改将丢失的信息”之类的消息,这些消息不能被覆盖。 在较旧的浏览器中,您可以指定要在提示中显示的消息:

  • 我目前一直在使用超链接类型浏览Javafx中的网站。 我需要创建一个具有指定名称的超链接类型。当我单击链接时,应该会弹出一个网站。 我的代码是: ... ... 上面的代码正确地显示了一个带有文本的超链接。它是可点击的,但什么都不会发生。为了浏览网站,我能做些什么?