利用Node.js批量抓取高清妹子图片实例教程
前言
写了一个抓取图片的小玩意,分享一下。
Github地址:https://github.com/focalhot/node.js-crawler (本地下载)
示例代码
//依赖模块 var fs = require('fs'); var request = require("request"); var cheerio = require("cheerio"); var mkdirp = require('mkdirp'); //目标网址 var url = 'http://me2-sex.lofter.com/tag/美女摄影?page='; //本地存储目录 var dir = './images'; //创建目录 mkdirp(dir, function(err) { if(err){ console.log(err); } }); //发送请求 request(url, function(error, response, body) { if(!error && response.statusCode == 200) { var $ = cheerio.load(body); $('.img img').each(function() { var src = $(this).attr('src'); console.log('正在下载' + src); download(src, dir, Math.floor(Math.random()*100000) + src.substr(-4,4)); console.log('下载完成'); }); } }); //下载方法 var download = function(url, dir, filename){ request.head(url, function(err, res, body){ request(url).pipe(fs.createWriteStream(dir + "/" + filename)); }); };
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对我们的支持。
相关推荐
-
Python3实现抓取javascript动态生成的html网页功能示例
本文实例讲述了Python3实现抓取javascript动态生成的html网页功能.分享给大家供大家参考,具体如下: 用urllib等抓取网页,只能读取网页的静态源文件,而抓不到由javascript生成的内容. 究其原因,是因为urllib是瞬时抓取,它不会等javascript的加载延迟,所以页面中由javascript生成的内容,urllib读取不到. 那由javascript生成的内容就真的没有办法读取了吗?非也! 这里要介绍一个python库:selenium,本文使用的版本是 2.4
-
Python爬虫使用Selenium+PhantomJS抓取Ajax和动态HTML内容
1.引言 在Python网络爬虫内容提取器一文我们详细讲解了核心部件:可插拔的内容提取器类gsExtractor.本文记录了确定gsExtractor的技术路线过程中所做的编程实验.这是第二部分,第一部分实验了用xslt方式一次性提取静态网页内容并转换成xml格式.留下了一个问题:javascript管理的动态内容怎样提取?那么本文就回答这个问题. 2.提取动态内容的技术部件 在上一篇python使用xslt提取网页数据中,要提取的内容是直接从网页的source code里拿到的.但是一些Aja
-
Google 爬虫如何抓取 JavaScript 的内容
我们测试了谷歌爬虫是如何抓取 JavaScript,下面就是我们从中学习到的知识. 认为 Google 不能处理 JavaScript ?再想想吧.Audette Audette 分享了一系列测试结果,他和他同事测试了什么类型的 JavaScript 功能会被 Google 抓取和收录. 长话短说 1. 我们进行了一系列测试,已证实 Google 能以多种方式执行和收录 JavaScript.我们也确认 Google 能渲染整个页面并读取 DOM,由此能收录动态生成的内容. 2. DOM 中的
-
基于JS抓取某高校附近共享单车位置 使用web方式展示位置变化代码实例
效果如图 使用了高德地图API:https://lbs.amap.com/api/javascript-api/example/marker/massmarks js代码如下: function MapOperate() { } MapOperate.prototype.listensubmit = function () { var self = this; var submitBut = $(".submit-btn"); var time_id = $("#time-i
-
Node.js+jade抓取博客所有文章生成静态html文件的实例
这篇文章,我们就把上文中采集到的所有文章列表的信息整理一下,开始采集文章并且生成静态html文件了.先看下我的采集效果,我的博客目前77篇文章,1分钟不到就全部采集生成完毕了,这里我截了部分的图片,文件名用文章的id生成的,生成的文章,我写了一个简单的静态模板,所有的文章都是根据这个模板生成的. 项目结构: 好了,接下来,我们就来讲解下,这篇文章主要实现的功能: 1,抓取文章,主要抓取文章的标题,内容,超链接,文章id(用于生成静态html文件) 2,根据jade模板生成html文件 一.抓取文
-
C#使用Selenium+PhantomJS抓取数据
手头项目需要抓取一个用js渲染出来的网站中的数据.使用常用的httpclient抓回来的页面是没有数据.上网百度了一下,大家推荐的方案是使用PhantomJS.PhantomJS是一个没有界面的webkit浏览器,能够和浏览器效果一致的使用js渲染页面.Selenium是一个web测试框架.使用Selenium来操作PhantomJS绝配.但是网上的例子多是Python的.无奈,下载了python按照教程搞了一下,卡在了Selenium的导入问题上.遂放弃,还是用自己惯用的c#吧,就不信c#上没
-
Nodejs抓取html页面内容(推荐)
废话不多说,直接给大家贴node.js抓取html页面内容的核心代码了. 具体代码如下所示: var http = require("http"); var iconv = require('iconv-lite'); var option = { hostname: "stockdata.stock.hexun.com", path: "/gszl/s601398.shtml" }; var req = http.request(option,
-
利用Node.js批量抓取高清妹子图片实例教程
前言 写了一个抓取图片的小玩意,分享一下. Github地址:https://github.com/focalhot/node.js-crawler (本地下载) 示例代码 //依赖模块 var fs = require('fs'); var request = require("request"); var cheerio = require("cheerio"); var mkdirp = require('mkdirp'); //目标网址 var url =
-
go语言实现抓取高清图片
看到有很多python 的,然后写了个go 的,可以抓取高清图片 getp.go 复制代码 代码如下: package main import ( "io/ioutil" "log" "net/http" "os" "regexp" "strconv" "strings" "sync"
-
c#实现抓取高清美女妹纸图片
c#实现抓取高清美女妹纸图片 复制代码 代码如下: private void DoFetch(int pageNum) { ThreadPool.QueueUserWorkItem(_ => { HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://me2-sex.lofter.com/tag/美女摄影?page=&
-
go语言读取json并下载高清妹子图片
学了一天golang,一边看文档一边写的go读取分析json并下载图片 json api为爱壁纸HD mac 1920x1200版本,高清妹子图 总结:go+json=shit package main import ( "fmt" "io" "io/ioutil" "net/http" "os" "path/filepath" "strconv" //"e
-
利用Node.js制作爬取大众点评的爬虫
前言 Node.js天生支持并发,但是对于习惯了顺序编程的人,一开始会对Node.js不适应,比如,变量作用域是函数块式的(与C.Java不一样):for循环体({})内引用i的值实际上是循环结束之后的值,因而引起各种undefined的问题:嵌套函数时,内层函数的变量并不能及时传导到外层(因为是异步)等等. 一. API分析 大众点评开放了查询餐馆信息的API,这里给出了城市与cityid之间的对应关系, 链接:http://m.api.dianping.com/searchshop.json
-
如何利用Node.js做简单的图片爬取
目录 介绍 安装引入 创建实例 元素捕获 下载图片 结语 介绍 爬虫的主要目的是收集互联网上公开的一些特定数据.利用这些数据我们可以能进行分析一些趋势对比,或者训练模型做深度学习等等.本期我们就将介绍一个专门用于网络抓取的 node.js 包—— node-crawler ,并且我们将用它完成一个简单的爬虫案例来爬取网页上图片并下载到本地. node-crawler 是一个轻量级的 node.js 爬虫工具,兼顾了高效与便利性,支持分布式爬虫系统,支持硬编码,支持http前级代理.而且,它完全是
-
如何用Node.js编写内存效率高的应用程序
前言 软件应用程序在计算机的主存储器中运行,我们称之为随机存取存储器(RAM).JavaScript,尤其是 Nodejs(服务端js)允许我们为终端用户编写从小型到大型的软件项目.处理程序的内存总是一个棘手的问题,因为糟糕的实现可能会阻塞在给定服务器或系统上运行的所有其他应用程序.C 和 C++程序员确实关心内存管理,因为隐藏在代码的每个角落都有可能出现可怕的内存泄漏.但是对于 JS 开发者来说,你真的有关心过这个问题吗? 由于 JS 开发人员通常在专用的高容量服务器上进行 web 服务器编程
-
分享PHP源码批量抓取远程网页图片并保存到本地的实现方法
做为一个仿站工作者,当遇到网站有版权时甚至加密的时候,WEBZIP也熄火,怎么扣取网页上的图片和背景图片呢.有时候,可能会想到用火狐,这款浏览器好像一个强大的BUG,文章有版权,屏蔽右键,火狐丝毫也不会被影响. 但是作为一个热爱php的开发者来说,更多的是喜欢自己动手.所以,我就写出了下面的一个源码,php远程抓取图片小程序.可以读取css文件并抓取css代码中的背景图片,下面这段代码也是针对抓取css中图片而编写的. <?php header("Content-Type: text/ht
-
利用Node.JS实现邮件发送功能
第一步.配置篇 首先需要安装nodemailer库 npm install nodemailer//默认会安装最新的版本. 关于这个库的文档参见nodemailer 第二步.库的一些使用介绍 这个库使用方法很简单的.首先是要创建一个用于发送邮件的实例 var transporter = nodemailer.createTransport(transport[, defaults]) transport参数属性 属性太多了就只写一些关键的属性 port:连接的端口号,一般就是465 host:你
随机推荐
- ajax处理php返回json数据的实例代码
- Javascript 面向对象编程(coolshell)
- 有关表格边框的css语法整理(1)
- PHP自定义函数格式化json数据示例
- xenserver虚拟机实时性能查看方法
- 如何用javascript计算文本框还能输入多少个字符
- 搭建Vim为自定义的PHP开发工具的一些技巧
- 对象失去焦点时自己动提交数据的实现代码
- Pycharm学习教程(5) Python快捷键相关设置
- golang语言中for循环语句用法实例
- MySQL插入emoji表情失败问题的解决方法
- AJAX避免用户重复提交请求实现方案
- JavaScript函数获取事件源的小例子
- js实现图片缓慢放大缩小效果
- DNS、DHCP的备份恢复bat(批处理自动实现)
- php学习笔记 数组的常用函数
- android手机获取唯一标识的方法
- 在ASP.NET 2.0中操作数据之五十八:在程序启动阶段缓存数据
- Node.js调用fs.renameSync报错(Error: EXDEV, cross-device link not permitted)
- ZFS是什么?使用ZFS的理由及特性介绍