node 项目 ------ 图片下载(加强ajax理解)
github地址:https://github.com/hucuanbin/imgDownload
项目说明
1.使用的是node-webkit 有点大 可以压缩包下载查看
2.项目的最初初衷 是直接下载图片,然后直接浏览 比直接去网页看更直观
3.允许下载列表页的图片 和 详情页的大图
项目截图
项目简介:
因为是朋友经常需要找图片 所以就做了一个这样的东西
是通过get方法中是通过url查找,没有直接通过关键字,不太人性和直观,
前端代码在 view目录中
node代码主要是 app/js/background.js
压缩合并用的是gulp
项目原理:
界面设定需要抓取的网页 页码 图片信息等 前端循环遍历 让node去抓取图片地址 并且下载
get方式
1.通过$.ajax去请求页面信息,把dom字符串转成JQ对象,然后查找到对应的图片的地址 或者 图片详情的URL地址
2.通过node的http.get去请求图片信息,并用fs.writeFile下载保存图片,其中下载地址会通过fs.exists进行转化成绝对路径
3.之后发现有些网址请求失败,通过测试,判断为需要页面的cookies信息,则前端加一个iframe,url为当前的抓取的首页,并且通过chrome.webRequest.onBeforeSendHeaders的方法,吧cookies设置到请求中,提交通过
4.并且试过通过登陆,通过原来的下载链接,下载高清大图
5.并且怕抓取过于平凡 设置美0.3秒抓取一次,可以通过前端代码设置
6.通过改下载图片的后缀,例子400_600,等 拿到尽量高清的图片
post方式
1.post方式相对简单,只要知道请求的参数,填写就好
2.post一般都有Refererd的要求,通过谷歌浏览器API 对Refererd和Accept进行修改
3.拿到地址后继续下载图片
总结
在这个小的软件中,运用的新知识不太多,大多在我之前做的项目中就运用到了,不过在开发过程中,见招拆招的感觉,还是非常棒的。
也对ajax了解更进一步,之后也看了一些防抓取和抓取的文章,如果以后工作学习中遇到类似的事情,一定能手到擒拿
代码都在github理,没有进行压缩,不过nw好像有点背时代淘汰了,不过就算不用nw,学习过,以后用在别的壳里面也是可用的
转载于:https://www.cnblogs.com/tutu-binbin/p/8609179.html
node 项目 ------ 图片下载(加强ajax理解)相关推荐
- Node.js 批量下载图片
前言 最近接手一个项目,是一个兄弟公司写的,使用PHP的ThinkPHP做的前后端在一起的项目.代码是别人搞到服务器上面去的,突然那边的整个技术部解散了,而我们这边在此之前我还没看见过代码.项目虽说部 ...
- Python漫画爬虫开源 66漫画 AJAX,包含数据库连接,图片下载处理
小白爬虫,大神绕道 软件:mysql8 python3.8 首先观察漫画网站结构 2020/2/15 VictorGanro原创 仅学习使用 目标网站链接: http://6mh6.com/(我比较喜 ...
- python爬今日头条图片保存_爬虫实战【7】Ajax解析续-今日头条图片下载
昨天我们分析了今日头条搜索得到的信息,一直对图集感兴趣的我还是选择将所有的图片下载下来. 我们继续讲一下如何通过各个图集的url得到每个图集下面的照片. 分析图集的组成 [插入图片,某个图集的页面] ...
- Node.js制作图片下载爬虫的一般步骤
图片下载爬虫分两部分:爬页面和下载图片. 爬页面时先看网址是https还是http的,然后选择不同的内置对象:其次看编码,如果是charset=gb2312的网页就需要iconv帮忙转码,好在大部分都 ...
- java异步下载图片_CMS项目实现异步图片下载
create table CMS_IMAGES ( id LONG PRIMARY KEY, --id wsrc varchar2(256),--远程图片地扯 lsrc varchar2(256),- ...
- python爬虫入门教程(三):淘女郎爬虫 ( 接口解析 | 图片下载 )
2019/10/28更新 网站已改版,代码已失效(其实早就失效了,但我懒得改...)此博文仅供做思路上的参考 代码使用python2编写,因已失效,就未改写成python3 爬虫入门系列教程: pyt ...
- 云原生尝试——Docker部署node项目
云原生--Docker实战 1.引言 2.学习条件 3.基本概念介绍 4.Docker基本使用 5.Docker进阶使用 6.参考文献 1.引言 最近一打开CSDN基本上都是在介绍云原生,本着 ...
- 【原】2009.NET年技术大会总结,有图片,说说我理解的技术大会 【下】
在阅读本篇之前,请先看上篇,上篇地址是: http://www.cnblogs.com/OceanChen/archive/2009/02/27/1399192.html 首先来回答上篇遗留的问题, ...
- 海洋工作室——网站建设专家:【原】2009.NET年技术大会总结,有图片,说说我理解的技术大会【上】...
阅读建议:一定要好好看完,然后做出你的评价,同时建议您留意高亮部分. 本来打算好好总结一下2009.NET年技术大会的.刚刚看到同事[LanceZhang]的博客,总结的挺快,挺酷的!而且总结的全面的 ...
最新文章
- MongoDB的备份(mongodump)与恢复(mongorestore)
- firefox html5 canvas,html5 Canvas
- FPGA中有限状态机的状态编码采用格雷码还是独热码?
- python中的format什么意思中文-python的format什么意思
- MATLAB中设置figure的边框
- linux下前一天时间格式
- vue中checkbox 样式自定义重写;循环遍历checkbox,拿到不同的v-model绑定值;及获取当前checked 状态,全选和全不选等功能。...
- [leetcode]203. Remove Linked List Elements链表中删除节点
- 使用域名访问后台页面
- 计算机机房用户不规则行为,网络及网管机房管理理论练习
- IntelliJ IDEA for Mac中的Maven操作窗口详解
- 前端date format_前端面试-手撕代码篇
- c++vector(入门级)
- Julia的Dates库是重要和必要的补充!
- TCPMP之旅(一) TCPMP整体软体框架
- 小议ARM Cortex-m0/m4系列的总线差异
- 一个可以免费下载英文书籍的网站
- 计算机隐藏图标和通知,win10系统通知区域图标、电脑右下角图标显示和隐藏设置的解决方案...
- 专科计算机专业取消,教育部公布已撤销了这些大学专业!有你的专业吗
- [FUNC]ObjRegisterActive