Как загрузить защищенные изображения hotlink? [закрытый]

Я хочу загрузить изображения с других веб-сайтов, защищенных hotlink. Я не хочу связывать эти изображения с моим сайтом. Я просто хотел их скачать.

4 ответов


на обычный метод hotlink-защиты проверяет, является ли HTTP-заголовок"Referrer" соответствует доменному имени исходного веб-сайта.

вы можете легко обойти это, установив этот заголовок вручную, чтобы указать на страницу на веб-сайте.


вам нужно передать HTTP-заголовок referrer. Вы можете сделать это с wget на большинстве систем unix следующим образом:

wget --referer=http://www.google.com/ http://www.google.com/intl/en_ALL/images/logo.gif

вот сырой способ сделать это, чтобы вы точно видели, что происходит:

telnet google.com 80
GET /intl/en_ALL/images/logo.gif HTTP/1.1
REFERER: http://www.google.com/
HOST: www.google.com

вы можете загрузить защищенные изображения hotlink, используя следующий код:

URL url = new URL("http://www.somesite.com/picture.jpg");

URLConnection urlCon = url.openConnection();
urlConn.setRequestProperty("Referer", "http://www.somesite.com");
urlConn.connect();

InputStream urlStream = urlCon.getInputStream();

Image image = ImageIO.read(urlStream);

расширение Postman для Chrome позволяет создавать пользовательские http-запросы. Я нашел изображение, заблокированное горячей ссылкой, скопировал его url-адрес и ввел его в Postman, чтобы получить его.