时间:2023-1-18 作者:老大夫 分类: 传智JAVA爬虫学习笔记
5.2.7. Selector选择器组合使用
Test
public void testSelecot2()throws Exception{
//解析html文件,获取Document
Document doc = Jsoup.parse(new File("C:\\Users\\16259\\Desktop\\test.html"), "utf8");
// el#id: 元素+ID,比如: h3#city_bj
// Element element = doc.select("h3#city_bj").first();
// el.class: 元素+class,比如: li.class_a
// Element element = doc.select("li.class_a").first();
// el[attr]: 元素+属性名,比如: span[abc]
// Element element = doc.select("span[abc]").first();
// 任意组合: 比如:span[abc].s_name
// Element element = doc.select("span[abc].s_name").first();
// ancestor child: 查找某个元素下子元素,比如:.city_con li 查找"city_con"下的所有li
// Elements elements = doc.select(".city_con li");
// for (Element element : elements) {
// System.out.println(element.text());
// }
// parent > child: 查找某个父元素下的直接子元素,比如:.city_con > ul > li 查找city_con第一级(直接子元素)的ul,再找所有ul下的第一级li
// Elements elements = doc.select(".city_con > ul >li");
// for (Element element : elements) {
// System.out.println(element.text());
// }
// parent > *: 查找某个父元素下所有直接子元素
Elements elements = doc.select(".city_con > ul > *");
for (Element element : elements) {
System.out.println(element.text());
}
// System.out.println("获取到的内容是: "+element.text());
}
推荐阅读: