0.1.1 • Published 6 years ago
compare-engine v0.1.1
CompareEngine
a simple compare engine. 中文
Installation
npm install compare-engine
Usage
const CompareEngine = require('compare-engine');
let engine = new CompareEngine.Engine(comparator, storage);
engine.addInput(obj);
comparator: instance extends
CompareEngine.Comparator
.storage: instance extends
CompareEngine.Storage
. key-value storage.
there are some comparator and storage you can use.
comparator
CompareEngine.ArticleComparator
(config): comparison of different articles.
- dependencies: npm install leven@^2.1.0
- WARN: the comparison algorithm is not suitable for fast comparison, so don't use it in large-scale comparisons.
const config = { // regular expression split articles, default: /[,。,\.\n]/ split: /[,。,\.\n]/, // chunk min length, default: 5 chunkMinLength: 5, // threshold, default: 1 threshold: 1, // save n similar results, default: 1 saveToNth: 1 }; let articleComparator = new CompareEngine.ArticleComparator(config);
CompareEngine.ImageComparator
(): comparison of different images by phash.
- dependencies: npm install phash
let imageComparator = new CompareEngine.ImageComparator();
storage
CompareEngine.CacheStorage
(): store compare result in memory.let cacheStorage = new CompareEngine.CacheStorage();
CompareEngine.FileStorage
(dirPath): store compare result in a directory.
- WARN: dirPath must be a string, if the dirPath not exist, it will use
fs.mkdir()
to create.let fileStorage = new CompareEngine.FileStorage('storage directory path');
License
MIT licensed
Copyright (c) 2017 jinrui