日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Z-Blog 爬虫 node实现

發布時間:2023/12/10 编程问答 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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

不出意外會打印數據庫連接成功,說明準備工作完成。

總結

以上是生活随笔為你收集整理的Z-Blog 爬虫 node实现的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。