Java爬虫-利用jsoup(抓安居客房源)
2017-09-25 15:51
232 查看
利用java的jsoup写了一个小爬虫,自己测试玩,抓起安居客的房源信息。
主要是解析html代码元素。同理可以解析其他网页html。
抓多了IP会被踢出,然后验证。
可以翻墙或者动态IP去抓取数据。我这边就是翻墙去测试的。
主要是解析html代码元素。同理可以解析其他网页html。
抓多了IP会被踢出,然后验证。
可以翻墙或者动态IP去抓取数据。我这边就是翻墙去测试的。
package com.fangejia.web.admin.jsoup; import org.jsoup.Jsoup; import org.jsoup.nodes.Document; import org.jsoup.nodes.Element; import org.jsoup.select.Elements; /** * Created by Author: lihongliang on 2017/3/1. * Email: 425631071@qq.com * Description: */ public class jsoupTest { public static void main(String[] args) { try { new jsoupTest().AnjukeRentHouse(); } catch (Exception e) { e.printStackTrace(); } } /** * * @throws Exception */ public void AnjukeRentHouse() throws Exception{ int pageNumber = 1; Document houseDoc = Jsoup.connect("http://chengdu.anjuke.com/sale/p"+pageNumber).get(); //html表情可能变了 Element houselistModel = houseDoc.getElementById("houselist-mod-new"); if(houselistModel!=null){ Elements houselistMod = houselistModel.getElementsByTag("li"); for (Element houseList : houselistMod) { Elements houseSrc = houseList.getElementsByTag("img"); String houseHref = houseSrc.attr("src"); System.out.println("房源列表 图片地址 : "+houseHref); Elements houseTitle = houseList.getElementsByTag("a"); String houseTitleString = houseTitle.attr("title"); String houseTitleHref = houseTitle.attr("href"); System.out.println("房源列表 标题 : "+houseTitleHref); System.out.println("房源列表 跳转地址 : "+houseTitleHref); Element detailsItem = houseList.getElementsByClass("details-item").get(0); String detailsItemText = detailsItem.text(); System.out.println("房源列表 item one : "+detailsItemText); Element detailsItem2 = houseList.getElementsByClass("details-item").get(1); String detailsItemText2 = detailsItem2.text(); System.out.println("房源列表 item two : "+detailsItemText2); Elements brokerName = houseList.getElementsByClass("broker-name"); String brokerNameText = brokerName.text(); System.out.println("房源列表 姓名: "+brokerNameText); //详情 Document houseDetailDoc = Jsoup.connect(houseTitleHref).get(); Element content = houseDetailDoc.getElementById("content"); Elements lonTtitle = content.getElementsByClass("long-title"); System.out.println("房源详情title : "+lonTtitle.text()); Elements wrapperLfClearfix = content.getElementsByClass("wrapper-lf clearfix"); Elements basicInfoClearfix = wrapperLfClearfix.get(0).getElementsByClass("basic-info clearfix"); System.out.println(basicInfoClearfix.get(0).getElementsByTag("light info-tag").text()); System.out.println("============================================================================================="+pageNumber); } }else { System.out.println("数据返回为空,获取数据失败!"); } } }
相关文章推荐
- Java爬虫--利用HttpClient和Jsoup爬取博客数据并存入数据库
- Java爬虫学习:利用HttpClient和Jsoup库实现简单的Java爬虫程序
- Java爬虫入门之Jsoup使用
- Java利用JSOUP爬取教务处成绩信息简单示例
- [Java爬虫] 使用 Jsoup + HttpClient 爬取网页图片
- java爬虫入门--用jsoup爬取汽车之家的新闻
- 利用jsoup爬虫工具,爬取数据,并利用excel导出
- 【Java Utility】Jsoup网页爬虫工具简介Java HTML PARSER【一】
- Java爬虫入门简介(二) —— Jsoup解析HTML页面
- 【Java Utility】Jsoup网页爬虫工具--从文件加载Document【六】
- 网络采集器Demo:Jsoup+Java多线程实现[爬虫](下)
- Java爬虫实现爬取京东上的手机搜索页面 HttpCliient+Jsoup
- 利用Fiddler手机抓包对ONE·APP网页爬虫实现电影资讯微信Java开发
- 【jsoup爬虫3】用jsoup来实现简单的java爬虫-视频篇
- 【Java Utility】Jsoup网页爬虫工具--设置属性值【十一】
- java爬虫(Jsoup爬取龙腾网)第一页信息
- Java 爬虫工具Jsoup详解
- JAVA爬虫--Jsoup的简单运用
- 利用java/android 模拟网页表单提交。可用于爬虫和wif登录器制作
- Java编写网络爬虫笔记(第三部分:Jsoup的强大)