1、思路:

成都創(chuàng)新互聯(lián)公司專業(yè)成都網(wǎng)站設計、做網(wǎng)站,集網(wǎng)站策劃、網(wǎng)站設計、網(wǎng)站制作于一體,網(wǎng)站seo、網(wǎng)站優(yōu)化、網(wǎng)站營銷、軟文平臺等專業(yè)人才根據(jù)搜索規(guī)律編程設計,讓網(wǎng)站在運行后,在搜索中有好的表現(xiàn),專業(yè)設計制作為您帶來效益的網(wǎng)站!讓網(wǎng)站建設為您創(chuàng)造效益。
明確需要爬取的信息
分析網(wǎng)頁結(jié)構(gòu)
分析爬取流程
優(yōu)化
2、明確需要爬取的信息
職位名稱
工資
職位描述
公司名稱
公司主頁
詳情網(wǎng)頁
分析網(wǎng)頁結(jié)構(gòu)
3、目標網(wǎng)站-拉勾網(wǎng)
網(wǎng)站使用json作為交互數(shù)據(jù),分析json數(shù)據(jù),需要的json關鍵數(shù)據(jù)
查看需要的信息所在的位置,使用Jsoup來解析網(wǎng)頁
4、分析爬取流程
1.獲取所有的positionId生成詳情頁,存放在一個存放網(wǎng)址列表中ListString joburls
2.獲取每個詳情頁并解析為Job類,得到一個存放Job類的列表ListJob jobList
3.把ListJob jobList存進Excel表格中
Java操作Excel需要用到jxl
5、關鍵代碼實現(xiàn)
public ListString getJobUrls(String gj,String city,String kd){
String pre_url="";
String end_url=".html";
String url;
if (gj.equals("")){
url=";city="+city+"needAddtionalResult=falsefirst=falsepn="+pn+"kd="+kd;
}else {
url=""+gj+"px=defaultcity="+city+"needAddtionalResult=falsefirst=falsepn="+pn+"kd="+kd;
}
String rs=getJson(url);
System.out.println(rs);
int total= JsonPath.read(rs,"$.content.positionResult.totalCount");//獲取總數(shù)
int pagesize=total/15;
if (pagesize=30){
pagesize=30;
}
System.out.println(total);
// System.out.println(rs);
ListInteger posid=JsonPath.read(rs,"$.content.positionResult.result[*].positionId");//獲取網(wǎng)頁id
for (int j=1;j=pagesize;j++){ //獲取所有的網(wǎng)頁id
pn++; //更新頁數(shù)
url=""+gj+"px=defaultcity="+city+"needAddtionalResult=falsefirst=falsepn="+pn+"kd="+kd;
String rs2=getJson(url);
ListInteger posid2=JsonPath.read(rs2,"$.content.positionResult.result[*].positionId");
posid.addAll(posid2); //添加解析的id到第一個list
}
ListString joburls=new ArrayList();
//生成網(wǎng)頁列表
for (int id:posid){
String url3=pre_url+id+end_url;
joburls.add(url3);
}
return joburls;
}
public Job getJob(String url){ //獲取工作信息
Job job=new Job();
Document document= null;
document = Jsoup.parse(getJson(url));
job.setJobname(document.select(".name").text());
job.setSalary(document.select(".salary").text());
String joball=HtmlTool.tag(document.select(".job_bt").select("div").html());//清除html標簽
job.setJobdesc(joball);//職位描述包含要求
job.setCompany(document.select(".b2").attr("alt"));
Elements elements=document.select(".c_feature");
//System.out.println(document.select(".name").text());
job.setCompanysite(elements.select("a").attr("href")); //獲取公司主頁
job.setJobdsite(url);
return job;
}
void insertExcel(ListJob jobList) throws IOException, BiffException, WriteException {
int row=1;
Workbook wb = Workbook.getWorkbook(new File(JobCondition.filename));
WritableWorkbook book = Workbook.createWorkbook(new File(JobCondition.filename), wb);
WritableSheet sheet=book.getSheet(0);
for (int i=0;ijobList.size();i++){ //遍歷工作列表,一行行插入到表格中
sheet.addCell(new Label(0,row,jobList.get(i).getJobname()));
sheet.addCell(new Label(1,row,jobList.get(i).getSalary()));
sheet.addCell(new Label(2,row,jobList.get(i).getJobdesc()));
sheet.addCell(new Label(3,row,jobList.get(i).getCompany()));
sheet.addCell(new Label(4,row,jobList.get(i).getCompanysite()));
sheet.addCell(new Label(5,row,jobList.get(i).getJobdsite()));
row++;
}
book.write();
book.close();
}
一般我們說自定義標簽是指JSP自定義標簽。自定義標簽在功能上邏輯上與javaBean 類似,都封裝Java 代碼。自定義標簽是可重用的組件代碼,并且允許開發(fā)人員為復雜的操作提供邏輯名稱。 JSP開發(fā)人員使用標簽庫創(chuàng)建標簽.標簽庫是按照功能或?qū)崿F(xiàn)進行分...
招java的網(wǎng)站有很多,
智聯(lián)
,
前程無憂
都可以。不過專門做程序員招聘服務的三顧人才還可以,沒有智聯(lián)那么有名,但是有自己的特色,
免費服務
,面試機會多。
標題名稱:招聘網(wǎng)站java代碼 java招聘app
標題鏈接:http://www.chinadenli.net/article32/dopjopc.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設、定制開發(fā)、營銷型網(wǎng)站建設、App設計、云服務器、App開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)