精华内容
下载资源
问答
  • nodejs爬虫

    2021-03-16 10:38:46
    nodejs爬虫,crawler插件nodejs爬虫,nodejs定时爬虫双色球和大乐透,nodejs定时爬虫双色球和大乐透进入数据库

    想用的小伙伴直接下载即可(注:里面的数据库要改成你自己的密码,sql文件也放在了里面)
    下载地址特意为小伙伴设置的免费下载,本文只用来自己玩耍可以,不能用作商业用途嗷!

    下面我们来解释下代码是怎么写的吧
    https://kaijiang.500.com/shtml/dlt/21019.shtml
    首先我看到了这个网址,我开始想怎么能把页面上的数据弄下来呢,要是能像前端一样js操作不是很舒服,于是开始百度找到了一个nodejs爬虫专用的插件crawler这个功能还是很多的,可以npm看下官方文档
    在这里插入图片描述
    我们发现这个貌似很有规律,这样我们不就可以循环取出了
    这一期的号码就全都得到了,那我们怎么把所有期的都拿到呢
    在这里插入图片描述
    我发现这里有个下拉,直接审查出下拉的class然后进行读取即可。是不是很简单。有问题的可以给我评论我给你们解释。

    展开全文
  • NodeJS爬虫

    2016-12-24 12:28:47
    这是一个NodeJS爬虫项目,用于爬取爱去小说网的小说资源,非常适合新手学习NodeJS,感受NodeJS的魅力 经测试,爬取并合并1645章的斗破苍穹耗时约6min 项目使用的模快主要有: async cheerio superagent superagent...

    这是一个NodeJS爬虫项目,用于爬取爱去小说网的小说资源,非常适合新手学习NodeJS,感受NodeJS的魅力

    经测试,爬取并合并1645章的斗破苍穹耗时约6min

    图片描述

    项目使用的模快主要有:

    • async

    • cheerio

    • superagent

    • superagent-charset

    • mysql

    • bluebird

    • cron

    async

    异步流程控制模快,用于优化下载速度
    

    cheerio

    服务端的jQuery,替代繁琐的正则表达式,大大提高了开发效率
    

    superagent

    轻量级的http请求模快,高效灵活
    

    superagent-charset

    对superagent抓取页面进行转码,NodeJS平台gbk转utf8神器
    

    mysql

    NodeJS的MySQL驱动模快,我用它实现了一个非常简易的ORM
    

    bluebird

    API Promise化,便于使用async/await进行流程控制
    

    cron

    任务调度模快
    

    项目地址见Github

    展开全文
  • nodeJs 爬虫

    千次阅读 2018-11-21 23:39:03
    1、既然用nodejs爬虫,第一个肯定是要安装nodejs啦,还有,既然你都看我的文章啦,说明你已经安装nodejs啦。 2、安装需要的模块:request、cheerio,如果用promise写的话,还要安装一个bluebird模块 3、我们爬虫...

    1、既然用nodejs写爬虫,第一个肯定是要安装nodejs啦,还有,既然你都看我的文章啦,说明你已经安装nodejs啦。

    2、安装需要的模块:request、cheerio,如果用promise写的话,还要安装一个bluebird模块

    3、我们爬虫的页面如下:

    4、第一种方法代码如下:

    // require 需要的模块,可以去npm和github看文档
    var request = require('request'); 
    const cheerio = require('cheerio')
    const baseUrl = "https://blog.csdn.net/wangweiscsdn/article/list/";// 这个链接有没有觉得眼熟,嘿嘿
    
    // 这个主要获取文章标题
    function startReq(url) {
        request(url, function (error, response, body) {
            const $ = cheerio.load(body); // 这里可以获取当前url的页面的html
            const data = $('h4 > a');
            data.map((k) => {
                const title = data[k].children[0].next.next.data;
                // console.log('data[k]------------->', data[k].children[0].next.next);
                console.log(title);
            })
        });
    }
    
    for (let i = 1; i < 10; i++) {
        const url = baseUrl + i;
        startReq(url);
    }
    

    5、第二种用了promise方式代码如下:

    var request = require('request');
    var promise = require('bluebird');
    const cheerio = require('cheerio')
    const baseUrl = "https://blog.csdn.net/wangweiscsdn/article/list/";
    
    function startReq(url) {
        return new Promise(function (resolve, reject) {
           let titles = []; 
    
            request(url, function (error, response, body) {
                const $ = cheerio.load(body);
                const data = $('h4 > a');
                
                data.map((k) => {
                    const title = data[k].children[0].next.next.data;
                    titles.push(title);
                })
    
                resolve(titles);
            });
    
        });
    }
    
    for (let i = 1; i < 10; i++) {
        const url = baseUrl + i;
        promise
            .all(startReq(url)) // all是peomise自带的方法,可以接受参数
            .then(function(titles) {
                console.log('scrawl complate!', titles);
            })
    }

     

     

     

    展开全文
  • nodejs 爬虫

    2017-07-19 11:26:50
    一个 nodejs爬虫示例,此处用于抓取 hexo 所有主题,并排序输出关注(star)排行 代码 https://github.com/henry-fighting/nodejs-crawler 使用方法 安装依赖包 npm install 执行指令 node server.js 到...

    一个 nodejs 的爬虫示例,此处用于抓取 hexo 所有主题,并排序输出关注(star)排行

    代码

    https://github.com/henry-fighting/nodejs-crawler

    使用方法

    1. 安装依赖包 npm install
    2. 执行指令 node server.js
    3. 到浏览器访问 localhost:3000

    背景

    玩 hexo 时苦于找不到好的主题,上知乎一搜,有人通过爬虫抓取了所有主题的排行版,但发帖时间是 2015 年的,已经过期很久。人家可以爬虫,我也可以,所以作死的开启了爬虫之路

    工作内容

    1. 访问 hexo 主题页: https://hexo.io/themes/
    2. 抓取所有主题的名字和 github 链接
    3. 访问所有主题的 github 链接,抓取 star 数
    4. 将所有主题对 star 进行排序,并输出到页面

    启发

    1. request VS SuperAgent

    一开始按照【参考资料1】使用 SuperAgent,发现爬虫非常慢,导致浏览器直接超时不访问了。还以为是 github 慢,开户了科学上网工具,效果一般。不得不亲自“爬虫”,访问 github 页面。实际上,页面反应很快,或者说 document 加载很快,是其他资源加载慢了。SuperAgent 估计是等到页面 loaded 了之后才返回数据。
    所以,有没有工具像 linux 里的 curl 合集,可以只请求 document 呢?百度下来找到了 requrest,请求确实快了很多,问题解决。

    那是不是说 request 就比 SuperAgent 好呢?分情况。如果爬虫的数据在 document 里,用 request 可以明显加快爬虫效率;如果爬虫的数据是页面 AJAX 请求得到的,就需要等到页面加载完再爬虫,此时就需要 SuperAgent 了。

    2. 事件处理 与 函数

    第一次看到事件时,一直以为事件就和函数一样,都是执行一项任务。接触爬虫后发现,事件的真正作用在异步(异步并非并发)!!

    刚开始开发爬虫时用的是函数,发现爬虫一直是爬完一个再爬另一个,效率非常慢(函数是顺序执行的)。这里才理解爬虫例子中使用事件不是没有原因的,异步才是使用 nodejs 爬虫最大的好处。


    参考资料

    1. 【nodeJS爬虫】前端爬虫系列 – 小爬「博客园」
    2. request 使用说明 github
    3. Nodejs读写文件
    展开全文
  • Nodejs爬虫实战

    2019-10-18 11:44:00
    Nodejs爬虫实战(一) Nodejs爬虫实战(二) Nodejs爬虫实战(三) Nodejs爬虫实战(四) Nodejs爬虫实战(五) Nodejs爬虫实战(六) Nodejs爬虫实战(七)数据可视化 ...
  • 不久前在公司做了一个关于爬虫的分享,简单介绍了网络爬虫的基础知识、爬虫的运作方式、抓取策略、攻防方式以及如何使用 NodeJS 进行爬虫开发, 在这里分享给各位同学分享一下~一、爬虫简介二、爬虫的运作方式三、...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,818
精华内容 2,727
关键字:

nodejs爬虫

爬虫 订阅