Это совершенно легко download all images from a website using wget.Загрузить все изображения, как wget делает с Java на стороне клиента
Но мне нужна эта функция на стороне клиента, лучше всего на Java.
Я знаю, что источник wget доступен в Интернете, но я не знаю ни одного C, а источник довольно сложный. Конечно, у wget есть и другие функции, которые «взорвали источник» для меня.
Как у Java есть встроенный HttpClient
, но я не знаю, насколько изощренным является wget на самом деле, не могли бы вы рассказать мне, сложно ли повторно реализовать функцию «загрузить все изображения рекурсивно» в Java?
Как это делается, точно? Получает ли wget исходный код HTML данного URL-адреса, извлекает все URL-адреса с указанными окончаниями файлов (.jpg, .png) из HTML и загружает их? Он также ищет изображения в таблицах стилей, которые связаны в этом документе HTML?
Как вы это сделаете? Будете ли вы использовать регулярные выражения для поиска (как относительных, так и абсолютных) URL-адресов изображений в документе HTML, и пусть HttpClient
загрузит каждый из них? Или уже есть какая-то библиотека Java, которая делает что-то подобное?
Возможно, вы захотите взглянуть на [Джерри] (http://jodd.org/doc/jerry/). Он предоставляет JQuery как селектор для документов HTML, и это может помочь вам найти все загружаемые изображения. –
Если вы знакомы с wget. почему вы не используете wget в java? Я имею в виду написать простой класс java, который вызовет скрипт, который будет содержать ваш wget! – Krishna
@ Кришна: Я выполняю эту задачу для двух программ, которые работают на Android и один на Windows, где у меня нет доступа к wget, к сожалению. Вот почему мне нужно чистое решение Java, не вызывая никаких внешних программ. – caw