Z-Blog 爬虫 node实现

Z-Blog 爬虫 node实现 目前正在连载更新中
一、需求

帮朋友建站,指定用Z-Blog,安装后,我发现采集文章不便,所以准备写一个node爬虫,实现对友站文章的自动采集。

二、实现之前的思考

1、 熟悉Z-Blog数据库

Z-Blog使用mysql数据库,所以我需要知道Z-Blog数据库结构。

2、node工具库选型

请求库想用superagent,规则提取用cheerio,并发控制用async,mysql数据库操作用sequelize

3、后续

第一版,简单写,满足自己的功能需求就行。若Z-Blog站点看到我文章,觉得也有爬虫需求,我会尝试写一个针对Z-Blog的采集框架。

三、开工 项目地址 z-blog-spider

1、初始化项目

yarn init

2、安装工具库

yarn add superagent cheerio sequelize mysql2

3、创建配置文件config.js

const Sequelize = require('sequelize');
module.exports.db_config = {
  database: 'qy',
  username: 'root',
  password: 'root',
  config: {
    host: '127.0.0.1',   // 数据库地址
    dialect: 'mysql',    // 指定连接的数据库类型
    operatorsAliases: Sequelize.Op,
    pool: {
      max: 5,          // 连接池中最大连接数量
      min: 0,          // 连接池中最小连接数量
      idle: 10000      // 如果一个线程 10 秒钟内没有被使用过的话,那么就释放线程
    }
  }
}

4、创建文件db.js测试数据库连通性(事先创建mode文件夹用于存放数据模型)

const fs = require('fs');
const path = require('path');
const Sequelize = require('sequelize');

const { db_config } = require('./config');

const sequelize = new Sequelize(db_config.database, db_config.username, db_config.password, db_config.config);

sequelize
  .authenticate()
  .then(() => {
    console.log('数据库连接成功');
  })
  .catch(err => {
    console.error('连接数据库出错', err);
  });
const db = {};

fs
  .readdirSync(path.join(__dirname, './model'))
  .forEach(function (file) {
    const model = sequelize.import(path.join(__dirname, file));
    db[model.name] = model;
  });

Object.keys(db).forEach(function (modelName) {
  if ('classMethods' in db[modelName].options) {
    if ('associate' in db[modelName].options['classMethods']) {
      db[modelName].options.classMethods.associate(db);
    }
  }
});

db.sequelize = sequelize;
db.Sequelize = Sequelize;

module.exports = db;

5、创建index.js文件,程序入口

const db = require('./db.js')

打开命令行运行node index.js

不出意外会打印数据库连接成功,说明准备工作完成。

ZBlog自动更新,自动留言,自动评论文章,翻译seo伪原创等等,可站群. 很多人问是否可以站群,其实分成多个文件夹不就实现了么,灵活运用才是对的 淘宝评论是原创哦。谷歌会针对文章内标签和标点符号来评论网站是否是采集来的,软件也处理了标点和标签替换和随机插入标点标签。又加上了汉字换拼音。同义词反义词。段落打乱。7-20更新!(加入有道翻译-伪原创) 自动采集文章(采集淘宝评论一页20条组合成一篇文章和自定义多个规则采集) 自动采集留言和评论(采集淘宝评论) 自动更新ZBlog文章(同义词反义词替换,加入有道翻译,随机位置超链接,随机换标点符号,随机换标签,随机位置插入标签丶标点,汉字随机转换为拼音,次数全部可自行设置!《标题也反转替换和随机换1个为拼音》) 自动评论ZBlog文章*随机文章评论,可设置随机评论时间间隔+自动IP代理(可自动设置随机间隔换IP代理) 自动ZBlog留言本留言*可设置随机留言时间间隔+自动IP代理(可自动设置随机间隔换IP代理) 自动浏览ZBlog文章(换IP浏览加流量)*可设置随机浏览时间间隔+自动IP代理(可自动设置随机间隔换IP代理) 自动采集IP代理,自动采集可用IP代理(1000个以上) 自动网站重新生成全站(文件重建) 数据库的文章导出到TXT文本 导入TXT文本到数据库为更新文章 支持打开调试界面 支持后台运行*代理IP不影响电脑的浏览器,挂机不影响电脑
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值