ActiveMQ Ubuntu HashMap 另类堆栈 全局重载运算符 volatile 程序栈 iphone spring stream swift2 angularjs版本 后台管理系统模板 微信小游戏开发视频 安卓小程序源码 数据库设计规范 查看mysql是否启动 hadoop组件 html下拉框默认选中 plsql卸载 python抛出异常 python自学入门 python文件读取 java写入文件 java初级 java八大基本数据类型 java获取url java连接sql java游戏开发 登录界面html 迷宫解锁 安卓刷机精灵 特战英雄辅助 算法笔记 微信小程序开发实例 送货单管理系统 还原软件哪个好 计算机科学概论 0000008e python编辑器
当前位置: 首页 > 学习教程  > 编程语言

Jsoup爬虫学习笔记

2021/1/13 20:02:59 文章标签: 测试文章如有侵权请发送至邮箱809451989@qq.com投诉后文章立即删除

#Jsoup pom.xml <!--jsoup解析网页--><!--如果想爬一些电影音乐&#xff0c;可以学tika--><dependency><groupId>org.jsoup</groupId><artifactId>jsoup</artifactId><version>1.10.2</version></dependency>ja…

#Jsoup

pom.xml

<!--jsoup解析网页-->
        <!--如果想爬一些电影音乐,可以学tika-->
        <dependency>
            <groupId>org.jsoup</groupId>
            <artifactId>jsoup</artifactId>
            <version>1.10.2</version>
        </dependency>

java代码

//本次实验对象以京东为例
//key是要搜索的关键字
public List<Content> queryKey(String key){
		List<Content> list = new ArrayList<Content>();
		//获得请求   https://search.jd.com/Search?keyword=java
		//前提,需要联网! ajax获取不到
		String url = "https://search.jd.com/Search?keyword="+key;
		//解析网页 Jsoup返回Document就是浏览器Document对象
		Document document = null;
		try {
			document = Jsoup.parse(new URL(url), 30000);
		} catch (IOException e) {
			e.printStackTrace();
		}
		//所有你在js中可以使用的方法这里都可以使用
		Element element = document.getElementById("J_goodsList");
		Elements lis = element.getElementsByTag("li");
		for (Element li : lis) {
			//关于图片特别多的网站,所有的图片都是延迟加载的
			//放在了source-data-lazy-img中
			String img = li.getElementsByTag("img").eq(0).attr("data-lazy-img");
			String price = li.getElementsByClass("p-price").text();
			String name = li.getElementsByClass("p-name").text();
			Content content = new Content();
			content.setImg(img);
			content.setName(name);
			content.setPrice(price);
			list.add(content);
		}
		return list;
	}

部分版本的Url不支持中文的解析,这是因为其中的编码格式的原因,应该是编码格式为IOS-…的


本文链接: http://www.dtmao.cc/news_show_600235.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?