2017-06-02 117 views
0

当谈到自动化时,我是一名外行人,我试图弄清楚如何执行我认为是非常基本的功能。基本上,我有一个网站上的几千项我想删除。我想这样做的方式基本如下:使用Selenium通过URL进行循环访问

  1. 转到URL https://website.com/[itemnumber]
  2. 选择删除按钮(UI元素)
  3. 加[itemnumber]并删除下一个
  4. 如果[itemnumber]不存在(404错误),则增加并转到下一个

再次,完成外行。我不是很了解JS,我现在唯一能够运行的东西就是Selenium,但是如果有更好的方法来执行此操作,我完全开放。谢谢!

+0

更好地删除直接发送HTTP请求的项目,而无需在UI中打开它,因为打开数千个项目需要很长时间。您可以在点击“删除”按钮时检查发送了哪个url请求,并且只是迭代相同请求 –

+0

如果您熟悉'Python',则可以尝试[请求](http://docs.python-requests.org/en/master /)lib发送'HTTP'请求来删除循环中的每个项目 – Andersson

回答

0

这可以使用循环完成。对于Java,下面的代码可能会给你一个想法。

System.setProperty("webdriver.chrome.driver", "F:\\Softwares\\Selenium\\Webdriver\\chromedriver.exe"); 
    WebDriver driver = new ChromeDriver(); 
    driver.manage().timeouts().implicitlyWait(5, TimeUnit.SECONDS); 

    //For example i am taking item number upto 10 
    int itemnumbber = 10; 
    for(int i = 0;i<=itemnumbber;i++) 
    { 
     String url = "https://website.com/["+i+"]"; 
     driver.navigate().to(url); 

     //Checks the delete element. If if exists click it 
     if(driver.findElements(By.xpath("DELETEXPATH")).size()>0) 
     { 
      driver.findElement(By.xpath("DELETEXPATH")).click(); 
     } 
    } 

按照要求修改itemnumber数量。希望这可以帮助你。谢谢。