【发布时间】:2016-11-28 06:13:40
【问题描述】:
我对使用 Java 进行 html 解析非常陌生,我之前使用 JSoup 解析简单的 html 而没有动态更改,但是我现在需要解析具有动态元素的网页。这是我之前尝试解析网页的代码,但是无法找到元素,因为它们是在页面加载后添加的。问题是一个页面使用带有标记的谷歌地图,我正在尝试抓取这些标记的图像。
public static void main(String[] args) {
try {
doc = Jsoup.connect("https://pokevision.com")
.userAgent(
"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36")
.get();
} catch (IOException e) {
e.printStackTrace();
}
Elements images = doc.select("img[src~=(?i)\\.(png|jpe?g|gif)]");
for (Element image : images) {
System.out.println("src : " + image.attr("src"));
}
}
【问题讨论】:
-
@Tibrogargan 这是一个由 Jsoup 支持的 CSS 选择器:jsoup.org/cookbook/extracting-data/selector-syntax
标签: java parsing web-scraping html-parsing jsoup