java+selnium爬取凡人修仙传
最近無聊,就用java爬了下凡人修仙傳的內容,具體不多說,看代碼圖
package testNG;
//連續兩章讀取 根據xpath中
//根據參數讀取
import static org.junit.Assert.assertTrue;
import java.sql.Driver;
import java.util.List;
import java.util.concurrent.TimeUnit;
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.BeforeMethod;
import org.testng.annotations.Test;
public class NewTest {
WebDriver driver;
public void begin() {
// 第一個頁面
driver.findElement(By.id(“kw”)).sendKeys(“凡人修仙傳”);
driver.manage().timeouts().implicitlyWait(1000, TimeUnit.SECONDS);
driver.findElement(By.id(“su”)).click();
driver.manage().timeouts().implicitlyWait(1000, TimeUnit.SECONDS);
driver.findElement(By.xpath("//[@id=‘7’]/h3/a")).click();
/
WebElement zhang=driver.findElement(By.xpath("//*[@id=‘list’]/dl/dd"));
System.out.println(zhang);
for (WebElement a: zhang){
System.out.println(a.getAttribute(“href”));//獲取標簽路徑
}
public static int pageone=500;
public static int pagetwo=501;
// int array[]=[];
public void one(){
begin();
// 第二個頁面
driver.manage().timeouts().implicitlyWait(1000, TimeUnit.SECONDS);
// 轉換窗口
tiaozhuan();
// 與當前頁面作比較 是 就跳過執行
driver.findElement(By.xpath("//*[@id=‘list’]/dl/dd["+pageone+"]/a")).click();
driver.manage().timeouts().implicitlyWait(1000, TimeUnit.SECONDS);
// 獲取頁面源代碼 斷言出現文字
String b=driver.getPageSource();
assertTrue(b.contains(“修真小說”));
// 跳轉頁面
WebElement a=driver.findElement(By.id(“content”));
System.out.println(a.getText());
}
@Test
public void two(){
one();
// 跳轉第一個界面
driver.findElement(By.xpath("//[@id=‘wrapper’]/div[4]/div/div[1]/a[3]")).click();
// tiaozhuan();
driver.findElement(By.xpath("//[@id=‘list’]/dl/dd["+pagetwo+"]/a")).click();
// 轉換窗口
//tiaozhuan();
// 與當前頁面作比較 是 就跳過執行
//driver.findElement(By.xpath("//*[@id=‘list’]/dl/dd[1]/a")).click();
//driver.manage().timeouts().implicitlyWait(1000, TimeUnit.SECONDS);
// 獲取頁面源代碼 斷言出現文字
String b=driver.getPageSource();
assertTrue(b.contains(“修真小說”));
// 跳轉頁面
WebElement a=driver.findElement(By.id(“content”));
System.out.println(a.getText());
}
@BeforeMethod
public void beforeMethod() {
System.setProperty(“webdirver.chrome.driver”, “C://chromedriver.exe”);
driver=new ChromeDriver();
driver.get(“http://www.baidu.com”);
}
@AfterMethod
public void afterMethod() {
driver.manage().timeouts().implicitlyWait(1000, TimeUnit.SECONDS);
driver.quit();
}
public void tiaozhuan(){
String handle=driver.getWindowHandle();
for(String handles :driver.getWindowHandles()){
if(handles.equals(handle)){
continue;
}
driver.switchTo().window(handles);
}
driver.manage().timeouts().implicitlyWait(1000, TimeUnit.SECONDS);
}
}
總結
以上是生活随笔為你收集整理的java+selnium爬取凡人修仙传的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 雷军:《我十年的程序员生涯》系列之三:阳
- 下一篇: Artifact xxx:war exp