Просто используйте простой анализатор HTML , например jTidy , а затем получите все элементы по имени тега img
, а затем соберите атрибут src
каждого в List<String>
или, может быть, List<URI>
.
Вы можете получить InputStream
из URL
, используя URL#openStream()
, а затем передать его любому анализатору HTML, который вы хотите использовать. Вот начальный пример:
InputStream input = new URL("http://www.stackoverflow.com").openStream();
Document document = new Tidy().parseDOM(input, null);
NodeList imgs = document.getElementsByTagName("img");
List<String> srcs = new ArrayList<String>();
for (int i = 0; i < imgs.getLength(); i++) {
srcs.add(imgs.item(i).getAttributes().getNamedItem("src").getNodeValue());
}
for (String src: srcs) {
System.out.println(src);
}
Однако я должен признать, что HtmlUnit, предложенный Божо, действительно выглядит лучше.