Как загрузить защищенные изображения 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, чтобы получить его.