资源简介
从大众点评完首页:http:dianping.com/citylist 开始爬取数据,用户在输出界面输入想要搜索的地域名以及商铺名以后,可以获得爬取到的结果,实现了简单的检索功能,达到了大众点评网数据爬取的目的
代码片段和文件信息
package DaZhongjiansuo;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.HttpException;
import org.apache.commons.httpclient.HttpStatus;
import org.apache.commons.httpclient.methods.GetMethod;
import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import org.junit.Test;
public class DZDemo{
//获得httpclient
private HttpClient httpclient=new HttpClient();
//定义一个url,url表示最终所搜的域名
private String url;
//定义i为1,i表示页码编号,作用是循环获得所有页码
private int i=1;
//Scanner s = new Scanner(System.in);
//定义str,str表示输入的地名
private String str = null;
//定义keywordstr,keywordstr表示输入的要搜索的字词
private String keywordstr = null;
//定义shop,shop表示你搜索到的商铺信息(包括商铺名称、星级、点评数)
private String shop=null;
//定义shoplist,为了存放搜索到的所有商铺信息
List shoplist=new ArrayList();
//有参构造,作用是获得在页面上输入的参数
public DZDemo(String str String keywordstr) {
super();
this.str = str;
this.keywordstr = keywordstr;
}
public String getStr() {
return str;
}
public void setStr(String str) {
this.str = str;
}
public String getKeywordstr() {
return keywordstr;
}
public void setKeywordstr(String keywordstr) {
this.keywordstr = keywordstr;
}
//获得区域Url
public String getAreaUrl(){
//定义区域URL
String areaurl=null;
GetMethod getmethod=new GetMethod(“http://www.dianping.com/citylist“);
getmethod.setRequestHeader(“Accept“ “text/html“);
getmethod.setRequestHeader(“Accept-Language“ “zh-CNzh;q=0.8en;q=0.6“);
getmethod.setRequestHeader(“User-Agent“ “Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML like Gecko) Chrome/47.0.2526.106 Safari/537.36“);
try {
//String st=“爱知“;
//System.out.println(“爱知“==(st));
//获得方法执行返回码,返回码为200表示方法执行成功
int statucode=httpclient.executeMethod(getmethod);
//System.out.println(statucode);
if(statucode==HttpStatus.SC_OK){
//获得请求返回的string类型的响应
String html=getmethod.getResponseBodyAsString();
//jsoup将string类型的响应解析称document类型
Document doc=getDocument(html);
//获得所有区域所在的块
Elements elements=doc.select(“[class=glossary-list gl-py]“).select(“li“).select(“a“);
for(Element element:elements){
//获得区域名称
String AreaStr=element.text();
//System.out.println(AreaStr);
//获得你所输入的区域对应的URL
if(str.equals(AreaStr)){
areaurl=“http://www.dianping.com“+element.attr(“href“);
}
}
}
} catch (Exception e) {
e.printStackTrace();
} finally{
//释放链接
getmethod.releaseConnection();
}
//System.out.println(areaurl);
return areaurl;
}
//获得搜索店名URL
public String getSearchUrl(){
//获得你所搜索的区域URL
String searchUrl=getAreaUrl();
//Scanner s = new Scanne
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2016-02-18 15:49 DZDP\
文件 1093 2016-02-02 20:11 DZDP\.classpath
文件 1329 2016-02-02 11:25 DZDP\.project
目录 0 2016-02-18 15:49 DZDP\.settings\
文件 522 2016-02-01 23:32 DZDP\.settings\.jsdtscope
文件 364 2016-02-01 23:32 DZDP\.settings\org.eclipse.jdt.core.prefs
文件 471 2016-02-01 23:32 DZDP\.settings\org.eclipse.wst.common.component
文件 414 2016-02-01 23:32 DZDP\.settings\org.eclipse.wst.common.project.facet.core.xm
文件 49 2016-02-01 23:32 DZDP\.settings\org.eclipse.wst.jsdt.ui.superType.container
文件 6 2016-02-01 23:32 DZDP\.settings\org.eclipse.wst.jsdt.ui.superType.name
目录 0 2016-02-18 15:49 DZDP\src\
目录 0 2016-02-18 15:49 DZDP\src\DaZhongjiansuo\
文件 9427 2016-02-03 18:50 DZDP\src\DaZhongjiansuo\DZDemo.java
文件 1999 2016-02-04 11:54 DZDP\src\DaZhongjiansuo\DZServlet.java
目录 0 2016-02-18 15:49 DZDP\WebRoot\
文件 1206 2016-02-03 20:44 DZDP\WebRoot\index.jsp
文件 2098 2016-02-02 16:03 DZDP\WebRoot\index_01.jsp
文件 932 2016-02-02 13:26 DZDP\WebRoot\JavaBean_03.jsp
目录 0 2016-02-18 15:49 DZDP\WebRoot\me
文件 39 2016-02-01 23:32 DZDP\WebRoot\me
文件 881 2016-02-02 11:30 DZDP\WebRoot\MyJsp01.jsp
文件 828 2016-02-02 16:04 DZDP\WebRoot\Suc.jsp
目录 0 2016-02-18 15:49 DZDP\WebRoot\WEB-INF\
目录 0 2016-02-18 15:49 DZDP\WebRoot\WEB-INF\classes\
目录 0 2016-02-18 15:49 DZDP\WebRoot\WEB-INF\classes\com\
文件 865 2016-02-02 20:11 DZDP\WebRoot\WEB-INF\classes\com\UserBean.class
目录 0 2016-02-18 15:49 DZDP\WebRoot\WEB-INF\classes\DaZhongjiansuo\
文件 7655 2016-02-03 18:50 DZDP\WebRoot\WEB-INF\classes\DaZhongjiansuo\DZDemo.class
文件 3120 2016-02-04 11:54 DZDP\WebRoot\WEB-INF\classes\DaZhongjiansuo\DZServlet.class
目录 0 2016-02-18 15:49 DZDP\WebRoot\WEB-INF\classes\demo\
目录 0 2016-02-18 15:49 DZDP\WebRoot\WEB-INF\classes\demo\serv\
............此处省略24个文件信息
评论
共有 条评论