我是一个新手在这里学习:p可能是一个非常基本的问题,但我只是不知道如何问或搜索它。所以我决定用selenium为java中的网页制作一个爬虫程序,我注意到如果终止会话的速度不够快,它就会冻结=(这是否意味着我必须经常调用.quit()并继续打开新的webdriver?或者有没有一种方法可以与网站持续互动?比如:我想打开谷歌。键入“馅饼”,然后单击搜索,也许我不喜欢结果,希望搜索“苹果馅饼”,并继续这样做了很长一段时间?
kse8i1jr1#
这是我为我的游戏时间练习所做的。你可以利用它。
String[] location = new String[] { "Los Angeles", "Santa Barbara", "San Jose" }; // Some code @Test public void testSelServerDiceTest() throws Exception { for (int i = 0; i < location.length; i++) { // manually added for loop selenium.open("/"); selenium.type("id=FREE_TEXT", "selenium RC JUnit"); selenium.type("id=WHERE", location[i].concat(" CA")); selenium.click("xpath=//*[@id=\"searchSubmit\"]"); selenium.waitForPageToLoad("30000"); verifyTrue(selenium.isTextPresent("Search results:")); verifyTrue(selenium.isTextPresent("Search job title only")); verifyEquals("JUnit", selenium.getText("css=div.undoLabel")); verifyTrue(selenium.isTextPresent("selenium")); verifyTrue(selenium.isTextPresent("Search results: 1 - 1 of 1")); assertTrue(selenium.isTextPresent("Search results:")); } } //Some more code
编辑
// webdriver code snippet @Test public void testRemoteWebDriverDiceTest() throws Exception { for (int i = 0; i < location.length; i++) { driver.get(baseUrl + "/"); driver.findElement(By.id("FREE_TEXT")).clear(); driver.findElement(By.id("FREE_TEXT")) .sendKeys("selenium RC JUnit"); driver.findElement(By.id("WHERE")).clear(); driver.findElement(By.id("WHERE")).sendKeys( location[i].concat(" CA")); driver.findElement(By.xpath("//*[@id=\"searchSubmit\"]")).click(); try { assertEquals("JUnit", driver.findElement(By.cssSelector("div.undoLabel")) .getText()); } catch (Error e) { verificationErrors.append(e.toString()); } } }
1条答案
按热度按时间kse8i1jr1#
这是我为我的游戏时间练习所做的。你可以利用它。
编辑