Node.js 使用http客户端得到网站的图片下载到本地

news/2024/5/11 22:37:21/文章来源:https://blog.csdn.net/weixin_34253539/article/details/90091056

以下代码有些冗余,大家捡核心看就好。

复制代码
// 内置http模块,提供了http服务器和客户端功能
var http=require("http");// cheerio模块,提供了类似jQuery的功能
var cheerio = require("cheerio");// 内置文件处理模块
var fs=require('fs');

// 请求参数JSON
var options;// 请求并获得数据
var req;// 存储页码
var index=4;function downloadImg(pageNumber){console.log("开始读取第"+pageNumber+"页");// http://images2017.cnblogs.com/blog/162475/201709/162475-20170929115047356-360094413.png // 实际图片地址options={hostname:'images2017.cnblogs.com',// 这里别加http://,否则会出现ENOTFOUND错误port:80,path:'/blog/162475/201709/162475-20170929115047356-360094413.png',// 子路径method:'GET',};req=http.request(options,function(resp){var imgData = "";resp.setEncoding("binary"); resp.on('data',function(chunk){imgData+=chunk;            });resp.on('end',function(){fs.writeFile("162475-20170929115047356-360094413.png", imgData, "binary", function(err){if(err){console.log("文件下载失败.");}console.log("下载成功");});    });});// 超时处理req.setTimeout(5000,function(){req.abort();});// 出错处理req.on('error',function(err){if(err.code=="ECONNRESET"){console.log('socket端口连接超时。');}else{console.log('请求发生错误,err.code:'+err.code);}});// 请求结束
    req.end();
}// 包一层函数
function start(i){downloadImg(i);
}// 开始遍历
start(index);
复制代码











本文转自张昺华-sky博客园博客,原文链接:http://www.cnblogs.com/xiandedanteng/p/7613955.html,如需转载请自行联系原作者

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_754471.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Nodejs建站笔记-注册登录流程的简单实现

1. 使用Backbone实现前端hash路由 登录注册页面如下: 初步设想将注册和登录作为两个不同的url实现,但登录和注册功能的差距只有form表单部分,用两个url实现显然开销过大,所以最终方案为使用hash作为前端路由,根据url的…

redis应用场景(1)一个文字投票网站

构建一个文章投票网站,一般具备下面几个功能 发布文章 文章投票评分(按投票多少进行评分) 文章排序(按发布时间,按评分高低) 文章分组(如专题) ... 1.关系型数据库设计 其中用户&…

iis网站属性在哪_windows服务器,网站被挂黑页,简单快速应急处理

作为一个网站管理员,你采用开源CMS做网站,比如dedecms,但是有一天,你忽然发现不知何时,网站的友情链接模块被挂大量垃圾链接,网站出现了很多不该有的目录,里面全是博彩相关的网页。而且&#xf…

网站建设不再难 - 2018年最好用的网站设计工具集锦

2019独角兽企业重金招聘Python工程师标准>>> 由于代码技术的限制,普通大众往往在网站建设方面总是一站难求。但是,想要拥有一个自己的网站,真的必须由程序员通过代码实现?哼,在当今满满科技感的新时代&…

安装iis打开网站提示Microsoft JET Database Engine 错误 '80004005'解决办法

今天在魅力网络公司办公室的一个电脑安装iis服务器软件,在win7系统上按的,放上了asp程序,但打开会有错误提示,打开htm静态的文件没问题,原因找了找发现是权限的问题。iis要求电脑磁盘格式是fat32的,而魅力网…

创建一个动态的雾_python django创建一个属于自己的动态网站

您如何开始使用Python创建网站?好吧,你可以自己完成所有工作,并编写一个在Web服务器上运行的程序,接受页面请求并以HTML和其他资源的形式提供响应。然而,这是很多工作,那么为什么在有大量现有工具为您完成工…

help.hybris.com和help.sap.com网站的搜索实现

help.hybris.com 我使用help.hybris.com时,发现每次在搜索栏输入文字时,没有发出任何HTTP请求,那么这个自动完成的下拉框里的记录从哪里来的?我看了下实现,发现所有自动完成下拉框里的记录都是硬编码在searchsuggestio…

自建网站对接微信公众号

title: 自建网站对接微信公众号date: 2018-04-12 15:25tags: 微信公众号,PHPcodeignitercategories: 技术 平常我们有些写各种网站, 个人博客系统, 物流管理系统, 通信录管理系统, 校园二手网站. 我们都知道, 只需要租用一个服务器, 再配置一个备案好的域名, 就可以在浏览器上进…

用VS2012建立core2.1网站项目后引用Microsoft.AspNetCore.Session不了

用VS2012建立core2.1网站项目后引用Microsoft.AspNetCore.Session不了 做个.NET CORE的新项目,和往常一样,VS2017新建CORE项目(CORE2.1),NUGET引入session,结果引入不了,说什么版本不对应的&…

hwpfdocument 获取第一页内容_浅谈:网站文章内容页的SEO排名技巧!

优化SEO的目的是获取搜索引擎的流量,但是在SEO执行过程中需要逐步循环,确保了SEO方案的可行性和SEO过程的可控性。为了引流目的反推SEO流程,获得搜索引擎流量需要关键词排名,获得关键词排名必须首先保证网站的收录。思维浅析对于新…

《机器学习与数据科学(基于R的统计学习方法)》——2.9 从网站中抓取数据...

本节书摘来异步社区《机器学习与数据科学(基于R的统计学习方法)》一书中的第2章,第2.9节,作者:【美】Daniel D. Gutierrez(古铁雷斯),更多章节内容可以访问云栖社区“异步社区”公众…

html怎么发布站点地图,新手如何掌握制作和提交网站地图?

网站地图作为根据网站的结构,框架,内容生成的导航网页文件。大多数人都知道网站地图对于提高用户体验有好处:它们为网站访问者指明方向,并帮助迷失的访问者找到他们想看的页面。那么什么是网站地图呢?在开始介绍网站地图的制作与…

利用dns解析来实现网站的负载均衡

当网站的访问量大了就会考虑负载均衡,这也是每一个架构师的基本功了,其基本地位就相当于相声里的说学逗唱,活好不好就看这个了 :)传统的负载均衡思路是单点的,不管你是硬件的还是软件的基本都是这样的原理对于一般的需求来说&…

给网站添加谷歌验证(我不是机器人)

2019独角兽企业重金招聘Python工程师标准>>> 1、去谷歌网站。(如果没有谷歌gmail,也许还要注册gmail并登陆) https://www.google.com/recaptcha/admin#list 2、注册要验证的网站。 Label中随意填写个标签。Choose the type of reCAPTCHA中选择验证类型。第一个是网站…

峰任策划:如何将网站推广做的更有效果

随着互联网的高速发展,互联网行业的竞争也是愈演愈烈。众多的中小企业也纷纷加入网络营销的行列中,建立起属于自家企业的网站,建立起以企业网站为核心的网络推广模式。那么如何来推广自己的网站,如何做好网站推广,目前…

十周后,62%的PHP网站将运行在一个不受支持的PHP版本上

根据W3Techs的统计数据,目前约有78.9%的网站使用PHP开发。\\但是,PHP 5.6.x的安全支持将在2018年12月31日正式停止,这标志着对古老的PHP 5.x分支版本的支持都将结束。\\也就是说,从明年开始,大约62&#xf…

你的网站会投放这样的广告么?

我震惊了,钱要赚,但为了公司名誉以及社会影响,就算是广告,能不能有个底线的啊?

无懈可击的Web设计:使用HTML 5和CSS 3提高网站的灵活性与适应性(第3版)

《无懈可击的Web设计:使用HTML 5和CSS 3提高网站的灵活性与适应性(第3版)》基本信息原书名:Bulletproof Web Design:Improving flexibility and protecting against worst-case scenarios with HTML5 and CSS3, Third Edition 原出版社: New …

电商网站中购物车功能模块完善

主要有两方面的问题: 1、登录状态下添加商品到购物车 此时购物车是对应一个用户,很简单,就是将商品的数据插入数据库中即可,但是如果读写频繁的时候,就存在压力问题,此时我们可以使用Redis担任读的部分功能…

thinkphp5项目--企业单车网站(八)(文章板块要点)(删除图片)

thinkphp5项目--企业单车网站(八)(文章板块要点)(删除图片) 项目地址 fry404006308/BicycleEnterpriseWebsite: Bicycle Enterprise Websitehttps://github.com/fry404006308/BicycleEnterpriseWebsite 一、…