今天在群里看到一个群友的问题,怎么下载网页的图片,经过一番的演变,得出了本文的成果,也算是一种思路,还可以演变成干很多事,因此写下此文,希望能够对大家有所启发。

问题:

如何从一个网页里下载浏览器加载出来的图片?

思考思路:

1、利用Ctrl+S保存,取出里面的图片
2、通过火狐控制台的网络面板,复制所有图片链接
3、利用控制台执行解析现有html里的img标签,得到它的链接
4、利用第3点得到的链接,直接借助js请求一个代理下载地址,帮忙下载图片文件

本文便是基于第4点实现。

第一步 获取页面图片链接并请求下载文件

获取所有img标签的链接,无论jQuery还是原生javascript都能做到,下面是它们的实现代码:

jQuery版获取页面图片链接并请求下载文件

$("img").each(function(){window.open('http://localhost/downloadImg.php?file='+encodeURIComponent($(this).attr("src")));
});

原生javascript版获取页面图片链接并请求下载文件

var tags = document.getElementsByTagName("img");
for (var i = 0; i < tags.length; i++) {window.open('http://localhost/downloadImg.php?file='+encodeURIComponent(tags[i].src));
}

第二步 文件代理下载程序

<?php
/*** 图片代理下载程序* @filename downloadImg.php* @author Zjmainstay* @website http://www.zjmainstay.cn* @usage 存储于http://localhost目录下*/
$filename = urldecode($_GET['file']);
if(preg_match('#/([^/]+)$#i', $filename, $match)) {$dir = dirname(__FILE__) . '/downloadImg/';if(!is_dir($dir)) @mkdir($dir, 0755);$saveFile = $dir . $match[1];file_put_contents($saveFile, file_get_contents($filename));echo "Success!";
} else {echo "Fail!";
}
//自动关闭窗口程序(打开窗口过多,不友好)
echo '<script type="text/javascript">window.close();</script>';

第三步 实操下载

  1. F12打开火狐Firebug控制台,结果如图(一)所示

如果你发现F12打开跟图片不一样,那么你需要安装Firebug:
菜单-工具-附加组件-右上角搜索"Firebug"-安装(Ctrl+Shift+A可快速打开附加组件窗口)

  1. 输入第一步的js代码并运行,结果如图(二)所示

  1. 查看http://localhost目录下的downloadImg目录,结果如图(三)所示

附:重要提示

这个代理下载功能(downloadImg.php)切不可对外开放,否则可能被人利用,代理下载携带php后门的图片文件,再结合其他的漏洞利用攻击你的服务器。

(本文完)

转载请附带本文原文地址:如何利用火狐控制台实现网页图片下载,首发自 Zjmainstay学习笔记

如何利用火狐控制台下载网页图片相关推荐

  1. 如何利用Excel批量下载网页图片?

    1.首先我们打开Excel,点击[图片工具]选项 ​ 2.点击[下载网页图片] ​ 3.然后录入图片网址 4.点击[选择]设置图片保存位置 5.最后我们点击[确定]就可以完成了 ​ 6.完成效果如下图 ...

  2. 下载网页图片-如何批量下载网页图片-批量图片下载工具免费

    下载网页图片,今天给大家分享一款免费批量下载网页图片软件,支持任意格式的图片批量下载,只需要输入关键词或批量导入网页链接即可下载图片.批量下载任意网页上的图片,每个人都可以拥有各种高清图源.支持批量图 ...

  3. 下载网页图片-批量下载网页图片软件免费

    下载网页图片,今天给大家分享一款免费批量下载网页图片软件,支持任意格式的图片批量下载,只需要输入关键词或批量导入网页链接即可下载图片.批量下载任意网页上的图片,每个人都可以拥有各种高清图源.支持批量图 ...

  4. 怎么样可以批量下载网页图片?

    ​ 1.首先我们打开Excel软件,点击[图片工具]选项 2.鼠标点击[下载网页图片] ​ 3.在弹出对话框中录入网页地址 4.点击[选择]设置保存图片位置 5.最后点击[确定]即可完成 ​ 6.完成 ...

  5. Python3.x爬虫下载网页图片

    Python3.x爬虫下载网页图片 一.选取网址进行爬虫 本次我们选取pixabay图片网站 url=https://pixabay.com/ 二.选择图片右键选择查看元素来寻找图片链接的规则 通过查 ...

  6. Extreme Picture Finder(网络图片下载器)官方中文版V3.53.3 | 下载网页图片的软件 | 图片助手批量图片下载器

    Extreme Picture Finder 是一款功能强大的集网络图片下载器软件和网页视频下载软件于一体的综合性互联网素材采集工具,能帮助广大用户自动下载并保存几乎所有互联网上面的图像.视频.音乐以 ...

  7. python批量下载网页文件-Python批量下载网页图片详细教程

    目标:爬取某个网站上n多页的链接,每个链接有n多张图片,每一页对应一个文件夹,每个文件夹包含n个链接所对应的文件夹. 步骤1:获得网页的所有链接,访问所有链接,获得链接里的图片地址. 步骤2:根据图片 ...

  8. python下载网页里面所有的图片-Python批量下载网页图片详细教程

    很多朋友在网上查找批量下载图片的方法~发觉挺凌乱的,无从下手.这里绿茶小编就来跟大家分享下使用Python批量下载图片方法. 目标:爬取某个网站上n多页的链接,每个链接有n多张图片,每一页对应一个文件 ...

  9. 如何将网页保存为图片_如何用浏览器插件一键批量下载网页图片?

    如果你看到一个网页上的图片想要全部下载下来,你是如何下载的?一个一个下载太慢了,并且有的图片还有水印,没有水印的不让你下载,比如,阿里巴巴里的产品详情页.那么,有什么办法能一键下载网页上的图片呢?准备 ...

最新文章

  1. Ubuntu安装Flash视频插件
  2. c语言程序与设计苏小红,c语言程序设计苏小红
  3. 适用于Linux命令的10个R函数
  4. 机器学习笔记(十)降维和度量学习
  5. VS中添加命令行参数的方法
  6. ATT开源项目反客为主
  7. ATL offsetofclass 的工作原理
  8. Windows 禁止mysql 自动更新
  9. linux 下安装adobe flash的关键。
  10. Maxent猛犸反欺诈入选Gartner 2018 Cool Vendors
  11. 云服务器与传统服务器的优劣对比_相比于传统服务器,云服务器的优势在哪
  12. 玩转 Spring Boot 应用篇(序列号生成器服务实现)
  13. 火山PC浏览文件和选择文件-通用对话框教程
  14. 关于composer安装插件时候提示找不到fxp插件时候的解决办法
  15. 系统测试和验收测试的区别
  16. Hadoop 新手填坑指南
  17. eclipse导入idea项目教程
  18. android 手机震动1次,Android中手机震动的设置(Vibrator)的步骤
  19. ATTCK v10版本战术介绍—资源开发
  20. alias自定义快捷键及去掉“overwrite”提示的方法

热门文章

  1. PHP 零基础入门笔记(7):PHP 常用的系统函数
  2. 涂磊学计算机的为什么能进传媒岗位,情感嘉宾涂磊为什么口才那么好?他是什么学历?有过什么不同的经历?...
  3. Ubuntu中sudo命令
  4. 基于android的智慧社区物业便民服务APP(源码+系统+mysql数据库+Lw文档)
  5. 计算机中单元格地址如何命名,单元格命名_怎样给单元格重新命名或是删除单元格名称_vba...
  6. Windows 11/10 安装secpol.msc(本地安全策略)
  7. SQL Server 常用更新语句,用B表数据作为条件或数据源更新A表数据
  8. 南京师范大学计算机技术调剂,南京师范大学2017年考研调剂信息
  9. PMC 与 ERP
  10. dt/dt_拜亚动力DT150专业耳机评测