<div class="cnblogs_Highlighter">
<pre class="brush:java;collapse:true;;gutter:true;">import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
import org.openqa.selenium.support.ui.ExpectedCondition;
import org.openqa.selenium.support.ui.WebDriverWait;
import java.util.List;
public class BossSpider {
public static void spider() {// 爬虫
System.out.println("------Begin--------------");
//String url ="https://m.zhipin.com/weijd/v2/job/41e876ca76f18ca51XVz0925ElI~";
String url = "https://m.zhipin.com/weijd/v2/job/cc53ec27840e3f810nN42967FQ~~";
System.setProperty("webdriver.chrome.driver","/Tool/chromedriver");
WebDriver driver = new ChromeDriver();
driver.get(url);
(new WebDriverWait(driver,30)).until(new ExpectedCondition<Boolean>() {
public Boolean apply(WebDriver dr) {
int index = dr.getPageSource().indexOf("boss-message");
if (index != -1) {
return true; // 找到,退出等待
} else {
return false; // 未找到,继续等待
}
}
});
WebElement bossname = driver.findElement(By.cssSelector("div.boss-message"));
System.out.println(bossname.getText());;
List<WebElement> eleBoxs = driver.findElements(By.cssSelector("div.rec-position"));
for (WebElement eleBox : eleBoxs) {
WebElement eleTitle = eleBox.findElement(By.cssSelector("p.name"));
WebElement eleAnswer = eleBox.findElement(By.cssSelector("p.salary"));
System.out.println(eleTitle.getText() +" 薪资水平: "+eleAnswer.getText());
}
WebElement strength = driver.findElement(By.cssSelector("div.tags-position"));
System.out.println(strength.getText());;
// WebElement jobdetails = driver.findElement(By.xpath(".//*[@id='container']/div[2]/div[3]/div[2]/div[1]"));
WebElement jobdetails = driver.findElement(By.className("detail-text"));
System.out.println(jobdetails.getText());
driver.quit();
}
public static void main(String[] args) {
BossSpider.spider();
}
}
以前看到各个岗位到招聘信息一直在截图,心想着有没有简便办法将需要到信息输出来。今天有兴致,写了写代码。如上。
部分BOSS直聘中元素稍微有异,遇到找不到元素到情况,自己稍稍修改哦。
以下是我到截图:
 (编辑:李大同)
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!
|