/***
* 美图抓取
* http://www.tupianzj.com/meinv/
* @time 2014-9-5上午11:10:25
*/
public static void search2() {
String httpUrl = "http://www.tupianzj.com/meinv/";
try {
Document doc = Jsoup.connect(httpUrl).get();
Elements items = doc.select(".meinv970 dl");
System.out.println(items);
for(Element item:items){
Elements childItemsDT = item.select("dt h2 a");
String title=childItemsDT.html();
System.out.println(childItemsDT.html());
Elements childItemsDD1 = item.select("dd li a img");
for(Element childItemdd1:childItemsDD1){
String picUrl0=childItemdd1.attr("src");
saveImg("小",title, picUrl0);
System.out.println(picUrl0);
}
Elements childItemsDD2 = item.select("dd li .moxflashtext a");
System.out.println(childItemsDD2);
for(Element childItem:childItemsDD2){
String secondUrl="http://www.tupianzj.com"+childItem.attr("href");
Document childDoc = Jsoup.connect(secondUrl).get();
String picUrl=childDoc.select(".pictu900 img").attr("src");
System.out.println(picUrl);
saveImg("大",title, picUrl);
Elements thirdChilds=childDoc.select(".pages li a");
for(Element thirdChild:thirdChilds){
String isHave = thirdChild.attr("href");
if(!"".endsWith(isHave) && !"javascript:dPlayPre();".endsWith(isHave) && !"#".endsWith(isHave) && !"#".endsWith(isHave)){
String url=secondUrl.substring(0,secondUrl.lastIndexOf("/")+1)+isHave;
Document secondChildDoc = Jsoup.connect(url).get();
String picUrl1=secondChildDoc.select(".pictu900 img").attr("src");
System.out.println(picUrl1);
saveImg("大",title, picUrl1);
}
}
}
}
} catch (IOException e) {
e.printStackTrace();
}
}
/***
* 保存图片
* @time 2014-9-5上午11:10:25
*/
public static String saveImg(String tag,String name,String picUrl) {
String fileName = "";
fileName = tag+System.currentTimeMillis()+".jpg";
File realDirectory = new File("D:/pic/"+name+"/");
if (!realDirectory.exists()) {
realDirectory.mkdirs();
}
try {
// 构造URL
URL url = new URL(picUrl);
// 打开连接
URLConnection con = url.openConnection();
// 输入流
InputStream is = con.getInputStream();
// 1K的数据缓冲
byte[] bs = new byte[1024];
// 读取到的数据长度
int len;
// 输出的文件流
OutputStream os = new FileOutputStream("D:/pic/"+name+"/"+fileName);
// 开始读取
while ((len = is.read(bs)) != -1) {
os.write(bs, 0, len);
}
// 完毕,关闭所有链接
os.close();
is.close();
} catch (Exception e) {
e.printStackTrace();
}
return fileName;
}
分享到:
相关推荐
使用jsoup异步抓取新闻数据装载listview(仿开源中国资讯列表.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
使用jsoup异步抓取新闻数据装载listview(仿开源中国资讯列表)
Http,Jsoup-网页数据抓取,demo里介绍了对于广石化教务系统课程和成绩信息的抓取以及对茂名公交信息的抓取
本项目是一个基于安卓的简单利用jsoup爬取学校内网数据的教务系统app,设计的部分有:个人信息、课程表、考试时间、考勤信息、成绩查询、奖惩情况、开设课程、晚归违规等部分。主要思路就是利用jsoup爬数据把数据转化...
使用java+jsoup进行网页数据的抓取,提取自己想要的数据
soup 是一款 Java 的HTML 解析器,可直接解析某个URL地址、HTML文本内容。它提供了一套非常省力的API,可通过DOM,CSS以及类似于JQuery的操作方法来取出和操作数据。
httpClient+jsoup抓取网页数据实例和jar包
htmlunit2.8 + jsoup1.7各种网站上的数据抓取。
抓取网页上想要的内容~最后转化成json格式
利用httpClient+jsoup技术进行网页数据的获取,以网易贵金属为例~
使用JAVA语言进行数据抓取,对于每个专题,根据该专题的网页列表爬取每条报道的URL、标题和正文,并存入数据库。 这里需要建几张表,如专题表,网页报道表。以此,将每个专题及其新闻都抓取下来。
主要介绍了Java爬虫Jsoup+httpclient获取动态生成的数据的相关资料,需要的朋友可以参考下
主要介绍了Jsoup 抓取页面的数据实例详解的相关资料,需要的朋友可以参考下
使用jsoup 抓取虾米网站的歌曲数据,包括专辑图片 ,歌词,歌曲路径等信息
本篇文章主要介绍了android使用Jsoup 抓取页面的数据,jsoup 是一款Java的HTML解析器,有需要的朋友可以了解一下。
通过java程序获取豆瓣排名前多少的电视剧列表,获取电视剧的详细信息,筛选自己喜欢演员的电视剧,电影列表。通过JSOUP来解析HTML内容。
本文参考链接详细介绍如何使用Jsoup包抓取HTML数据,是一个纯java工程,并将其打包成jar包。希望了解如何用java语言爬虫网页的可以看下。详见博文: http://blog.csdn.net/yanzi1225627/article/details/38308963
Android App使用Jsoup抓取网页数据显示-附件资源