关于爬虫:
万维网上有着无数的网页,包含着海量的信息,无孔不入、森罗万象。但很多时候,无论出于数据分析或产品需求,我们需要从某些网站,提取出我们感兴趣、有价值的内容,但是纵然是进化到21世纪的人类,依然只有两只手,一双眼,不可能去每一个网页去点去看,然后再复制粘贴。所以我们需要一种能自动获取网页内容并可以按照指定规则提取相应内容的程序,这就是爬虫。
本篇文章就以小编用java语言爬取360视频网站为例,为大家进行复杂而又简单的爬虫技术的应用。
如上图所示,360影视网站共有电视剧,电影,综艺,动漫四个大的频道,分析其链接url,也有规律可言,分别为
1.https://www.360kan.com/dianshi/list 2.https://www.360kan.com/dianying/list
3.https://www.360kan.com/zongyi/list 4.https://www.360kan.com/dongman/list
接下来便开始通过url对需要的内容进行抓取
小编所使用到的工具有MyEclipse开发工具,Apache Tomcat服务器。具体的使用方法和配置在这里不详细介绍,不懂得的可以百度。需要做的是将安装的Tomcat与MyEclipse进行绑定,以使web程序能够在服务器上运行。首先新建工程,注意工程里需要导入我们的java爬虫常用工具jsoup.jar,然后在工程里写两个java web的Servlet,首页index.jsp,以及播放界面player.jsp,
(1)首页代码如下所示:
<div class="form">
<form action="/LongVideos/Search" method="post" target="ifr">
<input type="text" placeholder="尽情搜吧" name="v_name">
<input type="submit" value="搜搜">
</form>
</div>
<%
String p=request.getParameter("pageId");
for(int i=1;i<=24;i++){
String pa=i+"";
}
if("1".equals(p)){
p="1";
}else if("2".equals(p)){
p="2";
}else if("3".equals(p)){
p="3";
}else if("4".equals(p)){
p="4";
}else if("5".equals(p)){
p="5";
}else if("6".equals(p)){
p="6";
}else if("7".equals(p)){
p="7";
}else if("8".equals(p)){
p="8";
}else if("9".equals(p)){
p="9";
}else if("10".equals(p)){
p="10";
}else if("11".equals(p)){
p="11";
}else if("12".equals(p)){
p="12";
}else if("13".equals(p)){
p="13";
}else if("14".equals(p)){
p="14";
}else if("15".equals(p)){
p="15";
}else if("16".equals(p)){
p="16";
}else if("17".equals(p)){
p="17";
}else if("18".equals(p)){
p="18";
}else if("19".equals(p)){
p="19";
}else if("20".equals(p)){
p="20";
}else if("21".equals(p)){
p="21";
}else if("22".equals(p)){
p="22";
}else if("23".equals(p)){
p="23";
}else if("24".equals(p)){
p="24";
}else{
p="1";
}
System.out.print(p);
%>
<div class="tab" align="center">
<a href="/LongVideos/SpideImg?type=tvplay&pageId=<%=p %>" target="ifr">电视剧</a>
<a href="/LongVideos/SpideImg?type=movie&pageId=<%=p %>" target="ifr">电影</a>
<a href="/LongVideos/SpideImg?type=variety&pageId=<%=p %>" target="ifr">综艺</a>
<a href="/LongVideos/SpideImg?type=cartoon&pageId=<%=p %>" target="ifr">动漫</a>
</div>
<iframe src="/LongVideos/SpideImg?type=movie" n